diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 06d25eb..cf6f2e6 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,1672 +1,1043 @@ lockVersion: 2.0.0 id: 115d0df7-1198-46c9-9d03-a640abffed12 management: - docChecksum: ef657b2aadcc7b6b8d116b9b11322b80 + docChecksum: b61e31f00ae44ce87e930935e8780921 docVersion: "1.0" - speakeasyVersion: 1.352.2 - generationVersion: 2.385.2 - releaseVersion: 0.7.0 - configChecksum: 969fc29be808af5933aacc160337d561 + speakeasyVersion: 1.440.2 + generationVersion: 2.460.1 + releaseVersion: 0.8.0 + configChecksum: efd5b7c3b9f394b0ab2e9bb252038091 repoURL: https://github.com/panoratech/python-sdk.git installationURL: https://github.com/panoratech/python-sdk.git published: true features: python: additionalDependencies: 1.0.0 - constsAndDefaults: 1.0.1 - core: 5.3.3 + core: 5.6.5 defaultEnabledRetries: 0.2.0 - envVarSecurityUsage: 0.3.1 - flattening: 3.0.0 - globalSecurity: 3.0.1 + enumUnions: 0.1.0 + envVarSecurityUsage: 0.3.2 + flattening: 3.1.0 + globalSecurity: 3.0.2 globalSecurityCallbacks: 1.0.0 globalSecurityFlattening: 1.0.0 globalServerURLs: 3.0.0 groups: 3.0.0 + methodArguments: 1.0.2 nameOverrides: 3.0.0 nullables: 1.0.0 pagination: 3.0.1 - responseFormat: 1.0.0 - retries: 3.0.0 + responseFormat: 1.0.1 + retries: 3.0.2 sdkHooks: 1.0.0 - unions: 3.0.1 + unions: 3.0.3 generatedFiles: - - src/panora_sdk/sdkconfiguration.py - - src/panora_sdk/query.py - - src/panora_sdk/rag.py - - src/panora_sdk/files.py - - src/panora_sdk/folders.py - - src/panora_sdk/panora_groups.py - - src/panora_sdk/panora_filestorage_users.py - - src/panora_sdk/filestorage.py - - src/panora_sdk/login.py - - src/panora_sdk/auth.py - - src/panora_sdk/connections.py - - src/panora_sdk/webhooks.py - - src/panora_sdk/tickets.py - - src/panora_sdk/users.py - - src/panora_sdk/accounts.py - - src/panora_sdk/contacts.py - - src/panora_sdk/collections.py - - src/panora_sdk/comments.py - - src/panora_sdk/tags.py - - src/panora_sdk/teams.py - - src/panora_sdk/panora_ticketing_attachments.py - - src/panora_sdk/ticketing.py - - src/panora_sdk/sync.py - - src/panora_sdk/companies.py - - src/panora_sdk/panora_contacts.py - - src/panora_sdk/deals.py - - src/panora_sdk/engagements.py - - src/panora_sdk/notes.py - - src/panora_sdk/stages.py - - src/panora_sdk/tasks.py - - src/panora_sdk/panora_users.py - - src/panora_sdk/crm.py - - src/panora_sdk/linkedusers.py - - src/panora_sdk/projects.py - - src/panora_sdk/fieldmappings.py - - src/panora_sdk/events.py - - src/panora_sdk/retryid_.py - - src/panora_sdk/passthrough.py - - src/panora_sdk/bankinfos.py - - src/panora_sdk/benefits.py - - src/panora_sdk/panora_companies.py - - src/panora_sdk/dependents.py - - src/panora_sdk/employeepayrollruns.py - - src/panora_sdk/employees.py - - src/panora_sdk/employerbenefits.py - - src/panora_sdk/employments.py - - src/panora_sdk/groups.py - - src/panora_sdk/locations.py - - src/panora_sdk/paygroups.py - - src/panora_sdk/payrollruns.py - - src/panora_sdk/timeoffs.py - - src/panora_sdk/timeoffbalances.py - - src/panora_sdk/timesheetentries.py - - src/panora_sdk/hris.py - - src/panora_sdk/actions.py - - src/panora_sdk/automations.py - - src/panora_sdk/campaigns.py - - src/panora_sdk/panora_marketingautomation_contacts.py - - src/panora_sdk/emails.py - - src/panora_sdk/panora_events.py - - src/panora_sdk/lists.py - - src/panora_sdk/messages.py - - src/panora_sdk/templates.py - - src/panora_sdk/panora_marketingautomation_users.py - - src/panora_sdk/marketingautomation.py - - src/panora_sdk/activities.py - - src/panora_sdk/applications.py - - src/panora_sdk/attachments.py - - src/panora_sdk/candidates.py - - src/panora_sdk/departments.py - - src/panora_sdk/interviews.py - - src/panora_sdk/jobinterviewstages.py - - src/panora_sdk/jobs.py - - src/panora_sdk/offers.py - - src/panora_sdk/offices.py - - src/panora_sdk/rejectreasons.py - - src/panora_sdk/scorecards.py - - src/panora_sdk/panora_tags.py - - src/panora_sdk/panora_ats_users.py - - src/panora_sdk/eeocs.py - - src/panora_sdk/ats.py - - src/panora_sdk/panora_accounts.py - - src/panora_sdk/addresses.py - - src/panora_sdk/panora_attachments.py - - src/panora_sdk/balancesheets.py - - src/panora_sdk/cashflowstatements.py - - src/panora_sdk/companyinfos.py - - src/panora_sdk/panora_accounting_contacts.py - - src/panora_sdk/creditnotes.py - - src/panora_sdk/expenses.py - - src/panora_sdk/incomestatements.py - - src/panora_sdk/invoices.py - - src/panora_sdk/items.py - - src/panora_sdk/journalentries.py - - src/panora_sdk/payments.py - - src/panora_sdk/phonenumbers.py - - src/panora_sdk/purchaseorders.py - - src/panora_sdk/taxrates.py - - src/panora_sdk/trackingcategories.py - - src/panora_sdk/transactions.py - - src/panora_sdk/vendorcredits.py - - src/panora_sdk/accounting.py - - src/panora_sdk/products.py - - src/panora_sdk/orders.py - - src/panora_sdk/customers.py - - src/panora_sdk/fulfillments.py - - src/panora_sdk/ecommerce.py - - src/panora_sdk/sdk.py + - .gitattributes + - .python-version - .vscode/settings.json - - poetry.toml - - py.typed - - pylintrc - - pyproject.toml - - scripts/compile.sh - - scripts/publish.sh - - src/panora_sdk/__init__.py - - src/panora_sdk/basesdk.py - - src/panora_sdk/httpclient.py - - src/panora_sdk/py.typed - - src/panora_sdk/types/__init__.py - - src/panora_sdk/types/basemodel.py - - src/panora_sdk/utils/__init__.py - - src/panora_sdk/utils/annotations.py - - src/panora_sdk/utils/enums.py - - src/panora_sdk/utils/eventstreaming.py - - src/panora_sdk/utils/forms.py - - src/panora_sdk/utils/headers.py - - src/panora_sdk/utils/logger.py - - src/panora_sdk/utils/metadata.py - - src/panora_sdk/utils/queryparams.py - - src/panora_sdk/utils/requestbodies.py - - src/panora_sdk/utils/retries.py - - src/panora_sdk/utils/security.py - - src/panora_sdk/utils/serializers.py - - src/panora_sdk/utils/url.py - - src/panora_sdk/utils/values.py - - src/panora_sdk/models/sdkerror.py - - src/panora_sdk/models/queryop.py - - src/panora_sdk/models/querybody.py - - src/panora_sdk/models/listfilestoragefileop.py - - src/panora_sdk/models/unifiedfilestoragefileoutput.py - - src/panora_sdk/models/createfilestoragefileop.py - - src/panora_sdk/models/unifiedfilestoragefileinput.py - - src/panora_sdk/models/retrievefilestoragefileop.py - - src/panora_sdk/models/listfilestoragefolderop.py - - src/panora_sdk/models/unifiedfilestoragefolderoutput.py - - src/panora_sdk/models/createfilestoragefolderop.py - - src/panora_sdk/models/unifiedfilestoragefolderinput.py - - src/panora_sdk/models/retrievefilestoragefolderop.py - - src/panora_sdk/models/listfilestoragegroupop.py - - src/panora_sdk/models/unifiedfilestoragegroupoutput.py - - src/panora_sdk/models/unifiedfilestorageuseroutput.py - - src/panora_sdk/models/retrievefilestoragegroupop.py - - src/panora_sdk/models/listfilestorageusersop.py - - src/panora_sdk/models/retrievefilestorageuserop.py - - src/panora_sdk/models/logindto.py - - src/panora_sdk/models/connection.py - - src/panora_sdk/models/webhookresponse.py - - src/panora_sdk/models/webhookdto.py - - src/panora_sdk/models/deleteop.py - - src/panora_sdk/models/updatestatusop.py - - src/panora_sdk/models/signatureverificationdto.py - - src/panora_sdk/models/listticketingticketop.py - - src/panora_sdk/models/unifiedticketingticketoutput.py - - src/panora_sdk/models/unifiedticketingattachmentinput.py - - src/panora_sdk/models/unifiedticketingattachmentoutput.py - - src/panora_sdk/models/unifiedticketingtagoutput.py - - src/panora_sdk/models/unifiedticketingcollectionoutput.py - - src/panora_sdk/models/createticketingticketop.py - - src/panora_sdk/models/unifiedticketingticketinput.py - - src/panora_sdk/models/retrieveticketingticketop.py - - src/panora_sdk/models/listticketingusersop.py - - src/panora_sdk/models/unifiedticketinguseroutput.py - - src/panora_sdk/models/retrieveticketinguserop.py - - src/panora_sdk/models/listticketingaccountop.py - - src/panora_sdk/models/unifiedticketingaccountoutput.py - - src/panora_sdk/models/retrieveticketingaccountop.py - - src/panora_sdk/models/listticketingcontactsop.py - - src/panora_sdk/models/unifiedticketingcontactoutput.py - - src/panora_sdk/models/retrieveticketingcontactop.py - - src/panora_sdk/models/listticketingcollectionsop.py - - src/panora_sdk/models/retrievecollectionop.py - - src/panora_sdk/models/listticketingcommentsop.py - - src/panora_sdk/models/unifiedticketingcommentoutput.py - - src/panora_sdk/models/createticketingcommentop.py - - src/panora_sdk/models/unifiedticketingcommentinput.py - - src/panora_sdk/models/retrieveticketingcommentop.py - - src/panora_sdk/models/listticketingtagsop.py - - src/panora_sdk/models/retrieveticketingtagop.py - - src/panora_sdk/models/listticketingteamsop.py - - src/panora_sdk/models/unifiedticketingteamoutput.py - - src/panora_sdk/models/retrieveticketingteamop.py - - src/panora_sdk/models/listticketingattachmentsop.py - - src/panora_sdk/models/createticketingattachmentop.py - - src/panora_sdk/models/retrieveticketingattachmentop.py - - src/panora_sdk/models/statusop.py - - src/panora_sdk/models/resyncstatusdto.py - - src/panora_sdk/models/updatepullfrequencyop.py - - src/panora_sdk/models/updatepullfrequencydto.py - - src/panora_sdk/models/listcrmcompanyop.py - - src/panora_sdk/models/unifiedcrmcompanyoutput.py - - src/panora_sdk/models/phone.py - - src/panora_sdk/models/address.py - - src/panora_sdk/models/email.py - - src/panora_sdk/models/createcrmcompanyop.py - - src/panora_sdk/models/unifiedcrmcompanyinput.py - - src/panora_sdk/models/retrievecrmcompanyop.py - - src/panora_sdk/models/listcrmcontactsop.py - - src/panora_sdk/models/unifiedcrmcontactoutput.py - - src/panora_sdk/models/createcrmcontactop.py - - src/panora_sdk/models/unifiedcrmcontactinput.py - - src/panora_sdk/models/retrievecrmcontactop.py - - src/panora_sdk/models/listcrmdealsop.py - - src/panora_sdk/models/unifiedcrmdealoutput.py - - src/panora_sdk/models/createcrmdealop.py - - src/panora_sdk/models/unifiedcrmdealinput.py - - src/panora_sdk/models/retrievecrmdealop.py - - src/panora_sdk/models/listcrmengagementsop.py - - src/panora_sdk/models/unifiedcrmengagementoutput.py - - src/panora_sdk/models/createcrmengagementop.py - - src/panora_sdk/models/unifiedcrmengagementinput.py - - src/panora_sdk/models/retrievecrmengagementop.py - - src/panora_sdk/models/listcrmnoteop.py - - src/panora_sdk/models/unifiedcrmnoteoutput.py - - src/panora_sdk/models/createcrmnoteop.py - - src/panora_sdk/models/unifiedcrmnoteinput.py - - src/panora_sdk/models/retrievecrmnoteop.py - - src/panora_sdk/models/listcrmstagesop.py - - src/panora_sdk/models/unifiedcrmstageoutput.py - - src/panora_sdk/models/retrievecrmstageop.py - - src/panora_sdk/models/listcrmtaskop.py - - src/panora_sdk/models/unifiedcrmtaskoutput.py - - src/panora_sdk/models/createcrmtaskop.py - - src/panora_sdk/models/unifiedcrmtaskinput.py - - src/panora_sdk/models/retrievecrmtaskop.py - - src/panora_sdk/models/listcrmusersop.py - - src/panora_sdk/models/unifiedcrmuseroutput.py - - src/panora_sdk/models/retrievecrmuserop.py - - src/panora_sdk/models/linkeduserresponse.py - - src/panora_sdk/models/createlinkeduserdto.py - - src/panora_sdk/models/createbatchlinkeduserdto.py - - src/panora_sdk/models/retrievelinkeduserop.py - - src/panora_sdk/models/remoteidop.py - - src/panora_sdk/models/projectresponse.py - - src/panora_sdk/models/createprojectdto.py - - src/panora_sdk/models/customfieldresponse.py - - src/panora_sdk/models/definetargetfielddto.py - - src/panora_sdk/models/customfieldcreatedto.py - - src/panora_sdk/models/mapfieldtoproviderdto.py - - src/panora_sdk/models/eventresponse.py - - src/panora_sdk/models/getpanoracoreeventsop.py - - src/panora_sdk/models/requestop.py - - src/panora_sdk/models/passthroughrequestdto.py - - src/panora_sdk/models/getretriedrequestresponseop.py - - src/panora_sdk/models/listhrisbankinfoop.py - - src/panora_sdk/models/unifiedhrisbankinfooutput.py - - src/panora_sdk/models/retrievehrisbankinfoop.py - - src/panora_sdk/models/listhrisbenefitsop.py - - src/panora_sdk/models/unifiedhrisbenefitoutput.py - - src/panora_sdk/models/retrievehrisbenefitop.py - - src/panora_sdk/models/listhriscompaniesop.py - - src/panora_sdk/models/unifiedhriscompanyoutput.py - - src/panora_sdk/models/retrievehriscompanyop.py - - src/panora_sdk/models/listhrisdependentsop.py - - src/panora_sdk/models/unifiedhrisdependentoutput.py - - src/panora_sdk/models/retrievehrisdependentop.py - - src/panora_sdk/models/listhrisemployeepayrollrunop.py - - src/panora_sdk/models/unifiedhrisemployeepayrollrunoutput.py - - src/panora_sdk/models/taxitem.py - - src/panora_sdk/models/earningitem.py - - src/panora_sdk/models/deductionitem.py - - src/panora_sdk/models/retrievehrisemployeepayrollrunop.py - - src/panora_sdk/models/listhrisemployeesop.py - - src/panora_sdk/models/unifiedhrisemployeeoutput.py - - src/panora_sdk/models/createhrisemployeeop.py - - src/panora_sdk/models/unifiedhrisemployeeinput.py - - src/panora_sdk/models/retrievehrisemployeeop.py - - src/panora_sdk/models/listhrisemployerbenefitsop.py - - src/panora_sdk/models/unifiedhrisemployerbenefitoutput.py - - src/panora_sdk/models/retrievehrisemployerbenefitop.py - - src/panora_sdk/models/listhrisemploymentsop.py - - src/panora_sdk/models/unifiedhrisemploymentoutput.py - - src/panora_sdk/models/retrievehrisemploymentop.py - - src/panora_sdk/models/listhrisgroupsop.py - - src/panora_sdk/models/unifiedhrisgroupoutput.py - - src/panora_sdk/models/retrievehrisgroupop.py - - src/panora_sdk/models/listhrislocationsop.py - - src/panora_sdk/models/unifiedhrislocationoutput.py - - src/panora_sdk/models/retrievehrislocationop.py - - src/panora_sdk/models/listhrispaygroupsop.py - - src/panora_sdk/models/unifiedhrispaygroupoutput.py - - src/panora_sdk/models/retrievehrispaygroupop.py - - src/panora_sdk/models/listhrispayrollrunsop.py - - src/panora_sdk/models/unifiedhrispayrollrunoutput.py - - src/panora_sdk/models/retrievehrispayrollrunop.py - - src/panora_sdk/models/listhristimeoffsop.py - - src/panora_sdk/models/unifiedhristimeoffoutput.py - - src/panora_sdk/models/createhristimeoffop.py - - src/panora_sdk/models/unifiedhristimeoffinput.py - - src/panora_sdk/models/retrievehristimeoffop.py - - src/panora_sdk/models/listhristimeoffbalancesop.py - - src/panora_sdk/models/unifiedhristimeoffbalanceoutput.py - - src/panora_sdk/models/retrievehristimeoffbalanceop.py - - src/panora_sdk/models/listhristimesheetentriesop.py - - src/panora_sdk/models/unifiedhristimesheetentryoutput.py - - src/panora_sdk/models/createhristimesheetentryop.py - - src/panora_sdk/models/unifiedhristimesheetentryinput.py - - src/panora_sdk/models/retrievehristimesheetentryop.py - - src/panora_sdk/models/listmarketingautomationactionop.py - - src/panora_sdk/models/unifiedmarketingautomationactionoutput.py - - src/panora_sdk/models/createmarketingautomationactionop.py - - src/panora_sdk/models/unifiedmarketingautomationactioninput.py - - src/panora_sdk/models/retrievemarketingautomationactionop.py - - src/panora_sdk/models/listmarketingautomationautomationsop.py - - src/panora_sdk/models/unifiedmarketingautomationautomationoutput.py - - src/panora_sdk/models/createmarketingautomationautomationop.py - - src/panora_sdk/models/unifiedmarketingautomationautomationinput.py - - src/panora_sdk/models/retrievemarketingautomationautomationop.py - - src/panora_sdk/models/listmarketingautomationcampaignsop.py - - src/panora_sdk/models/unifiedmarketingautomationcampaignoutput.py - - src/panora_sdk/models/createmarketingautomationcampaignop.py - - src/panora_sdk/models/unifiedmarketingautomationcampaigninput.py - - src/panora_sdk/models/retrievemarketingautomationcampaignop.py - - src/panora_sdk/models/listmarketingautomationcontactsop.py - - src/panora_sdk/models/unifiedmarketingautomationcontactoutput.py - - src/panora_sdk/models/createmarketingautomationcontactop.py - - src/panora_sdk/models/unifiedmarketingautomationcontactinput.py - - src/panora_sdk/models/retrievemarketingautomationcontactop.py - - src/panora_sdk/models/listmarketingautomationemailsop.py - - src/panora_sdk/models/unifiedmarketingautomationemailoutput.py - - src/panora_sdk/models/retrievemarketingautomationemailop.py - - src/panora_sdk/models/listmarketingautomationeventsop.py - - src/panora_sdk/models/unifiedmarketingautomationeventoutput.py - - src/panora_sdk/models/retrievemarketingautomationeventop.py - - src/panora_sdk/models/listmarketingautomationlistsop.py - - src/panora_sdk/models/unifiedmarketingautomationlistoutput.py - - src/panora_sdk/models/createmarketingautomationlistop.py - - src/panora_sdk/models/unifiedmarketingautomationlistinput.py - - src/panora_sdk/models/retrievemarketingautomationlistop.py - - src/panora_sdk/models/listmarketingautomationmessagesop.py - - src/panora_sdk/models/unifiedmarketingautomationmessageoutput.py - - src/panora_sdk/models/retrievemarketingautomationmessageop.py - - src/panora_sdk/models/listmarketingautomationtemplatesop.py - - src/panora_sdk/models/unifiedmarketingautomationtemplateoutput.py - - src/panora_sdk/models/createmarketingautomationtemplateop.py - - src/panora_sdk/models/unifiedmarketingautomationtemplateinput.py - - src/panora_sdk/models/retrievemarketingautomationtemplateop.py - - src/panora_sdk/models/listmarketingautomationusersop.py - - src/panora_sdk/models/unifiedmarketingautomationuseroutput.py - - src/panora_sdk/models/retrievemarketingautomationuserop.py - - src/panora_sdk/models/listatsactivityop.py - - src/panora_sdk/models/unifiedatsactivityoutput.py - - src/panora_sdk/models/createatsactivityop.py - - src/panora_sdk/models/unifiedatsactivityinput.py - - src/panora_sdk/models/retrieveatsactivityop.py - - src/panora_sdk/models/listatsapplicationop.py - - src/panora_sdk/models/unifiedatsapplicationoutput.py - - src/panora_sdk/models/createatsapplicationop.py - - src/panora_sdk/models/unifiedatsapplicationinput.py - - src/panora_sdk/models/retrieveatsapplicationop.py - - src/panora_sdk/models/listatsattachmentop.py - - src/panora_sdk/models/unifiedatsattachmentoutput.py - - src/panora_sdk/models/createatsattachmentop.py - - src/panora_sdk/models/unifiedatsattachmentinput.py - - src/panora_sdk/models/retrieveatsattachmentop.py - - src/panora_sdk/models/listatscandidateop.py - - src/panora_sdk/models/unifiedatscandidateoutput.py - - src/panora_sdk/models/url.py - - src/panora_sdk/models/unifiedatstagoutput.py - - src/panora_sdk/models/createatscandidateop.py - - src/panora_sdk/models/unifiedatscandidateinput.py - - src/panora_sdk/models/retrieveatscandidateop.py - - src/panora_sdk/models/listatsdepartmentsop.py - - src/panora_sdk/models/unifiedatsdepartmentoutput.py - - src/panora_sdk/models/retrieveatsdepartmentop.py - - src/panora_sdk/models/listatsinterviewop.py - - src/panora_sdk/models/unifiedatsinterviewoutput.py - - src/panora_sdk/models/createatsinterviewop.py - - src/panora_sdk/models/unifiedatsinterviewinput.py - - src/panora_sdk/models/retrieveatsinterviewop.py - - src/panora_sdk/models/listatsjobinterviewstageop.py - - src/panora_sdk/models/unifiedatsjobinterviewstageoutput.py - - src/panora_sdk/models/retrieveatsjobinterviewstageop.py - - src/panora_sdk/models/listatsjobop.py - - src/panora_sdk/models/unifiedatsjoboutput.py - - src/panora_sdk/models/retrieveatsjobop.py - - src/panora_sdk/models/listatsofferop.py - - src/panora_sdk/models/unifiedatsofferoutput.py - - src/panora_sdk/models/retrieveatsofferop.py - - src/panora_sdk/models/listatsofficeop.py - - src/panora_sdk/models/unifiedatsofficeoutput.py - - src/panora_sdk/models/retrieveatsofficeop.py - - src/panora_sdk/models/listatsrejectreasonsop.py - - src/panora_sdk/models/unifiedatsrejectreasonoutput.py - - src/panora_sdk/models/retrieveatsrejectreasonop.py - - src/panora_sdk/models/listatsscorecardop.py - - src/panora_sdk/models/unifiedatsscorecardoutput.py - - src/panora_sdk/models/retrieveatsscorecardop.py - - src/panora_sdk/models/listatstagsop.py - - src/panora_sdk/models/retrieveatstagop.py - - src/panora_sdk/models/listatsusersop.py - - src/panora_sdk/models/unifiedatsuseroutput.py - - src/panora_sdk/models/retrieveatsuserop.py - - src/panora_sdk/models/listatseeocsop.py - - src/panora_sdk/models/unifiedatseeocsoutput.py - - src/panora_sdk/models/retrieveatseeocsop.py - - src/panora_sdk/models/listaccountingaccountsop.py - - src/panora_sdk/models/unifiedaccountingaccountoutput.py - - src/panora_sdk/models/createaccountingaccountop.py - - src/panora_sdk/models/unifiedaccountingaccountinput.py - - src/panora_sdk/models/retrieveaccountingaccountop.py - - src/panora_sdk/models/listaccountingaddressop.py - - src/panora_sdk/models/unifiedaccountingaddressoutput.py - - src/panora_sdk/models/retrieveaccountingaddressop.py - - src/panora_sdk/models/listaccountingattachmentsop.py - - src/panora_sdk/models/unifiedaccountingattachmentoutput.py - - src/panora_sdk/models/createaccountingattachmentop.py - - src/panora_sdk/models/unifiedaccountingattachmentinput.py - - src/panora_sdk/models/retrieveaccountingattachmentop.py - - src/panora_sdk/models/listaccountingbalancesheetsop.py - - src/panora_sdk/models/unifiedaccountingbalancesheetoutput.py - - src/panora_sdk/models/lineitem.py - - src/panora_sdk/models/retrieveaccountingbalancesheetop.py - - src/panora_sdk/models/listaccountingcashflowstatementop.py - - src/panora_sdk/models/unifiedaccountingcashflowstatementoutput.py - - src/panora_sdk/models/retrieveaccountingcashflowstatementop.py - - src/panora_sdk/models/listaccountingcompanyinfosop.py - - src/panora_sdk/models/unifiedaccountingcompanyinfooutput.py - - src/panora_sdk/models/retrieveaccountingcompanyinfoop.py - - src/panora_sdk/models/listaccountingcontactsop.py - - src/panora_sdk/models/unifiedaccountingcontactoutput.py - - src/panora_sdk/models/createaccountingcontactop.py - - src/panora_sdk/models/unifiedaccountingcontactinput.py - - src/panora_sdk/models/retrieveaccountingcontactop.py - - src/panora_sdk/models/listaccountingcreditnoteop.py - - src/panora_sdk/models/unifiedaccountingcreditnoteoutput.py - - src/panora_sdk/models/retrieveaccountingcreditnoteop.py - - src/panora_sdk/models/listaccountingexpenseop.py - - src/panora_sdk/models/unifiedaccountingexpenseoutput.py - - src/panora_sdk/models/createaccountingexpenseop.py - - src/panora_sdk/models/unifiedaccountingexpenseinput.py - - src/panora_sdk/models/retrieveaccountingexpenseop.py - - src/panora_sdk/models/listaccountingincomestatementop.py - - src/panora_sdk/models/unifiedaccountingincomestatementoutput.py - - src/panora_sdk/models/retrieveaccountingincomestatementop.py - - src/panora_sdk/models/listaccountinginvoiceop.py - - src/panora_sdk/models/unifiedaccountinginvoiceoutput.py - - src/panora_sdk/models/createaccountinginvoiceop.py - - src/panora_sdk/models/unifiedaccountinginvoiceinput.py - - src/panora_sdk/models/retrieveaccountinginvoiceop.py - - src/panora_sdk/models/listaccountingitemop.py - - src/panora_sdk/models/unifiedaccountingitemoutput.py - - src/panora_sdk/models/retrieveaccountingitemop.py - - src/panora_sdk/models/listaccountingjournalentryop.py - - src/panora_sdk/models/unifiedaccountingjournalentryoutput.py - - src/panora_sdk/models/createaccountingjournalentryop.py - - src/panora_sdk/models/unifiedaccountingjournalentryinput.py - - src/panora_sdk/models/retrieveaccountingjournalentryop.py - - src/panora_sdk/models/listaccountingpaymentop.py - - src/panora_sdk/models/unifiedaccountingpaymentoutput.py - - src/panora_sdk/models/createaccountingpaymentop.py - - src/panora_sdk/models/unifiedaccountingpaymentinput.py - - src/panora_sdk/models/retrieveaccountingpaymentop.py - - src/panora_sdk/models/listaccountingphonenumberop.py - - src/panora_sdk/models/unifiedaccountingphonenumberoutput.py - - src/panora_sdk/models/retrieveaccountingphonenumberop.py - - src/panora_sdk/models/listaccountingpurchaseorderop.py - - src/panora_sdk/models/unifiedaccountingpurchaseorderoutput.py - - src/panora_sdk/models/createaccountingpurchaseorderop.py - - src/panora_sdk/models/unifiedaccountingpurchaseorderinput.py - - src/panora_sdk/models/retrieveaccountingpurchaseorderop.py - - src/panora_sdk/models/listaccountingtaxrateop.py - - src/panora_sdk/models/unifiedaccountingtaxrateoutput.py - - src/panora_sdk/models/retrieveaccountingtaxrateop.py - - src/panora_sdk/models/listaccountingtrackingcategorysop.py - - src/panora_sdk/models/unifiedaccountingtrackingcategoryoutput.py - - src/panora_sdk/models/retrieveaccountingtrackingcategoryop.py - - src/panora_sdk/models/listaccountingtransactionop.py - - src/panora_sdk/models/unifiedaccountingtransactionoutput.py - - src/panora_sdk/models/retrieveaccountingtransactionop.py - - src/panora_sdk/models/listaccountingvendorcreditop.py - - src/panora_sdk/models/unifiedaccountingvendorcreditoutput.py - - src/panora_sdk/models/retrieveaccountingvendorcreditop.py - - src/panora_sdk/models/listecommerceproductsop.py - - src/panora_sdk/models/unifiedecommerceproductoutput.py - - src/panora_sdk/models/variant.py - - src/panora_sdk/models/createecommerceproductop.py - - src/panora_sdk/models/unifiedecommerceproductinput.py - - src/panora_sdk/models/retrieveecommerceproductop.py - - src/panora_sdk/models/listecommerceordersop.py - - src/panora_sdk/models/unifiedecommerceorderoutput.py - - src/panora_sdk/models/createecommerceorderop.py - - src/panora_sdk/models/unifiedecommerceorderinput.py - - src/panora_sdk/models/retrieveecommerceorderop.py - - src/panora_sdk/models/listecommercecustomersop.py - - src/panora_sdk/models/unifiedecommercecustomeroutput.py - - src/panora_sdk/models/retrieveecommercecustomerop.py - - src/panora_sdk/models/listecommercefulfillmentsop.py - - src/panora_sdk/models/unifiedecommercefulfillmentoutput.py - - src/panora_sdk/models/retrieveecommercefulfillmentop.py - - src/panora_sdk/models/security.py - - src/panora_sdk/models/__init__.py - - docs/models/queryrequest.md - - docs/models/queryresponsebody.md - - docs/models/querybody.md - - docs/models/listfilestoragefilerequest.md - - docs/models/listfilestoragefileresponsebody.md - - docs/models/listfilestoragefileresponse.md - - docs/models/unifiedfilestoragefileoutput.md - - docs/models/createfilestoragefilerequest.md - - docs/models/unifiedfilestoragefileinput.md - - docs/models/retrievefilestoragefilerequest.md - - docs/models/listfilestoragefolderrequest.md - - docs/models/listfilestoragefolderresponsebody.md - - docs/models/listfilestoragefolderresponse.md - - docs/models/unifiedfilestoragefolderoutput.md - - docs/models/createfilestoragefolderrequest.md - - docs/models/unifiedfilestoragefolderinput.md - - docs/models/retrievefilestoragefolderrequest.md - - docs/models/listfilestoragegrouprequest.md - - docs/models/listfilestoragegroupresponsebody.md - - docs/models/listfilestoragegroupresponse.md - - docs/models/usersmodel.md - - docs/models/unifiedfilestoragegroupoutput.md - - docs/models/unifiedfilestorageuseroutput.md - - docs/models/retrievefilestoragegrouprequest.md - - docs/models/listfilestorageusersrequest.md - - docs/models/listfilestorageusersresponsebody.md - - docs/models/listfilestorageusersresponse.md - - docs/models/retrievefilestorageuserrequest.md - - docs/models/logindto.md - - docs/models/tokentype.md - - docs/models/connection.md - - docs/models/webhookresponse.md - - docs/models/webhookdto.md - - docs/models/deleterequest.md - - docs/models/updatestatusrequest.md - - docs/models/signatureverificationdto.md - - docs/models/listticketingticketrequest.md - - docs/models/listticketingticketresponsebody.md - - docs/models/listticketingticketresponse.md + - USAGE.md + - docs/models/address.md + - docs/models/attachmentsmodel.md - docs/models/collectionsmodel.md - - docs/models/tagsmodel.md - - docs/models/unifiedticketingticketoutputattachments.md - docs/models/comment.md - - docs/models/attachmentsmodel.md - - docs/models/unifiedticketingticketoutput.md - - docs/models/unifiedticketingattachmentinput.md - - docs/models/unifiedticketingattachmentoutput.md - - docs/models/unifiedticketingtagoutput.md - - docs/models/unifiedticketingcollectionoutput.md - - docs/models/createticketingticketrequest.md - - docs/models/unifiedticketingticketinputcollections.md - - docs/models/unifiedticketingticketinputtags.md - - docs/models/unifiedticketingticketinputcommentattachments.md - - docs/models/unifiedticketingticketinputcomment.md - - docs/models/unifiedticketingticketinputattachments.md - - docs/models/unifiedticketingticketinput.md - - docs/models/retrieveticketingticketrequest.md - - docs/models/listticketingusersrequest.md - - docs/models/listticketingusersresponsebody.md - - docs/models/listticketingusersresponse.md - - docs/models/unifiedticketinguseroutput.md - - docs/models/retrieveticketinguserrequest.md - - docs/models/listticketingaccountrequest.md - - docs/models/listticketingaccountresponsebody.md - - docs/models/listticketingaccountresponse.md - - docs/models/unifiedticketingaccountoutput.md - - docs/models/retrieveticketingaccountrequest.md - - docs/models/listticketingcontactsrequest.md - - docs/models/listticketingcontactsresponsebody.md - - docs/models/listticketingcontactsresponse.md - - docs/models/unifiedticketingcontactoutput.md - - docs/models/retrieveticketingcontactrequest.md - - docs/models/retrieveticketingcontactresponsebody.md - - docs/models/listticketingcollectionsrequest.md - - docs/models/listticketingcollectionsresponsebody.md - - docs/models/listticketingcollectionsresponse.md - - docs/models/retrievecollectionrequest.md - - docs/models/listticketingcommentsrequest.md - - docs/models/listticketingcommentsresponsebody.md - - docs/models/listticketingcommentsresponse.md - - docs/models/unifiedticketingcommentoutputattachments.md - - docs/models/unifiedticketingcommentoutput.md - - docs/models/createticketingcommentrequest.md - - docs/models/unifiedticketingcommentinputattachments.md - - docs/models/unifiedticketingcommentinput.md - - docs/models/retrieveticketingcommentrequest.md - - docs/models/retrieveticketingcommentresponsebody.md - - docs/models/listticketingtagsrequest.md - - docs/models/listticketingtagsresponsebody.md - - docs/models/listticketingtagsresponse.md - - docs/models/retrieveticketingtagrequest.md - - docs/models/listticketingteamsrequest.md - - docs/models/listticketingteamsresponsebody.md - - docs/models/listticketingteamsresponse.md - - docs/models/unifiedticketingteamoutput.md - - docs/models/retrieveticketingteamrequest.md - - docs/models/listticketingattachmentsrequest.md - - docs/models/listticketingattachmentsresponsebody.md - - docs/models/listticketingattachmentsresponse.md - - docs/models/createticketingattachmentrequest.md - - docs/models/retrieveticketingattachmentrequest.md - - docs/models/pathparamvertical.md - - docs/models/statusrequest.md - - docs/models/vertical.md - - docs/models/status.md - - docs/models/resyncstatusdto.md - - docs/models/updatepullfrequencyresponsebody.md - - docs/models/updatepullfrequencydto.md - - docs/models/listcrmcompanyrequest.md - - docs/models/listcrmcompanyresponsebody.md - - docs/models/listcrmcompanyresponse.md - - docs/models/createdat.md - - docs/models/modifiedat.md - - docs/models/unifiedcrmcompanyoutput.md - - docs/models/phone.md - - docs/models/address.md - - docs/models/ownertype.md - - docs/models/email.md + - docs/models/connection.md + - docs/models/createaccountingaccountrequest.md + - docs/models/createaccountingattachmentrequest.md + - docs/models/createaccountingcontactrequest.md + - docs/models/createaccountingexpenserequest.md + - docs/models/createaccountinginvoicerequest.md + - docs/models/createaccountingjournalentryrequest.md + - docs/models/createaccountingpaymentrequest.md + - docs/models/createaccountingpurchaseorderrequest.md + - docs/models/createbatchlinkeduserdto.md - docs/models/createcrmcompanyrequest.md - - docs/models/unifiedcrmcompanyinput.md - - docs/models/retrievecrmcompanyrequest.md - - docs/models/listcrmcontactsrequest.md - - docs/models/listcrmcontactsresponsebody.md - - docs/models/listcrmcontactsresponse.md - - docs/models/unifiedcrmcontactoutput.md - docs/models/createcrmcontactrequest.md - - docs/models/unifiedcrmcontactinput.md - - docs/models/retrievecrmcontactrequest.md - - docs/models/listcrmdealsrequest.md - - docs/models/listcrmdealsresponsebody.md - - docs/models/listcrmdealsresponse.md - - docs/models/unifiedcrmdealoutput.md - docs/models/createcrmdealrequest.md - - docs/models/unifiedcrmdealinput.md - - docs/models/retrievecrmdealrequest.md - - docs/models/listcrmengagementsrequest.md - - docs/models/listcrmengagementsresponsebody.md - - docs/models/listcrmengagementsresponse.md - - docs/models/unifiedcrmengagementoutput.md - docs/models/createcrmengagementrequest.md - - docs/models/unifiedcrmengagementinput.md - - docs/models/retrievecrmengagementrequest.md - - docs/models/listcrmnoterequest.md - - docs/models/listcrmnoteresponsebody.md - - docs/models/listcrmnoteresponse.md - - docs/models/unifiedcrmnoteoutput.md - docs/models/createcrmnoterequest.md - - docs/models/unifiedcrmnoteinput.md - - docs/models/retrievecrmnoterequest.md - - docs/models/listcrmstagesrequest.md - - docs/models/listcrmstagesresponsebody.md - - docs/models/listcrmstagesresponse.md - - docs/models/unifiedcrmstageoutputcreatedat.md - - docs/models/unifiedcrmstageoutputmodifiedat.md - - docs/models/unifiedcrmstageoutput.md - - docs/models/retrievecrmstagerequest.md - - docs/models/listcrmtaskrequest.md - - docs/models/listcrmtaskresponsebody.md - - docs/models/listcrmtaskresponse.md - - docs/models/unifiedcrmtaskoutput.md - docs/models/createcrmtaskrequest.md - - docs/models/unifiedcrmtaskinput.md - - docs/models/retrievecrmtaskrequest.md - - docs/models/listcrmusersrequest.md - - docs/models/listcrmusersresponsebody.md - - docs/models/listcrmusersresponse.md - - docs/models/unifiedcrmuseroutput.md - - docs/models/retrievecrmuserrequest.md - - docs/models/linkeduserresponse.md + - docs/models/createdat.md + - docs/models/createecommerceorderrequest.md + - docs/models/createecommerceproductrequest.md + - docs/models/createfilestoragefilerequest.md + - docs/models/createfilestoragefolderrequest.md - docs/models/createlinkeduserdto.md - - docs/models/createbatchlinkeduserdto.md - - docs/models/retrievelinkeduserrequest.md - - docs/models/remoteidrequest.md - - docs/models/projectresponse.md + - docs/models/createmarketingautomationactionrequest.md + - docs/models/createmarketingautomationautomationrequest.md + - docs/models/createmarketingautomationcampaignrequest.md + - docs/models/createmarketingautomationcontactrequest.md + - docs/models/createmarketingautomationlistrequest.md + - docs/models/createmarketingautomationtemplaterequest.md - docs/models/createprojectdto.md - - docs/models/customfieldresponsedatatype.md + - docs/models/createticketingattachmentrequest.md + - docs/models/createticketingcommentrequest.md + - docs/models/createticketingticketrequest.md + - docs/models/customfieldcreatedto.md + - docs/models/customfieldcreatedtodatatype.md + - docs/models/customfieldcreatedtoobjecttypeowner.md - docs/models/customfieldresponse.md - - docs/models/objecttypeowner.md + - docs/models/customfieldresponsedatatype.md + - docs/models/data.md - docs/models/datatype.md - docs/models/definetargetfielddto.md - - docs/models/customfieldcreatedtoobjecttypeowner.md - - docs/models/customfieldcreatedtodatatype.md - - docs/models/customfieldcreatedto.md - - docs/models/mapfieldtoproviderdto.md - - docs/models/type.md - - docs/models/eventresponsestatus.md - - docs/models/method.md + - docs/models/deleterequest.md + - docs/models/email.md - docs/models/eventresponse.md + - docs/models/eventresponsestatus.md + - docs/models/fieldmappingsmodel.md - docs/models/getpanoracoreeventsrequest.md - - docs/models/requestrequest.md - - docs/models/requestpassthroughresponsebody.md - - docs/models/requestresponsebody.md - - docs/models/requestresponse.md - - docs/models/passthroughrequestdtomethod.md - - docs/models/data.md - - docs/models/requestformat.md - - docs/models/headers.md - - docs/models/passthroughrequestdto.md - docs/models/getretriedrequestresponserequest.md - - docs/models/listhrisbankinforequest.md - - docs/models/listhrisbankinforesponsebody.md - - docs/models/listhrisbankinforesponse.md - - docs/models/fieldmappingsmodel.md - - docs/models/remotedata.md - - docs/models/unifiedhrisbankinfooutput.md - - docs/models/retrievehrisbankinforequest.md - - docs/models/listhrisbenefitsrequest.md - - docs/models/listhrisbenefitsresponsebody.md - - docs/models/listhrisbenefitsresponse.md - - docs/models/unifiedhrisbenefitoutputfieldmappings.md - - docs/models/unifiedhrisbenefitoutputremotedata.md - - docs/models/unifiedhrisbenefitoutput.md - - docs/models/retrievehrisbenefitrequest.md - - docs/models/listhriscompaniesrequest.md - - docs/models/listhriscompaniesresponsebody.md - - docs/models/listhriscompaniesresponse.md - - docs/models/unifiedhriscompanyoutputfieldmappings.md - - docs/models/unifiedhriscompanyoutputremotedata.md - - docs/models/unifiedhriscompanyoutput.md - - docs/models/retrievehriscompanyrequest.md - - docs/models/listhrisdependentsrequest.md - - docs/models/listhrisdependentsresponsebody.md - - docs/models/listhrisdependentsresponse.md - - docs/models/unifiedhrisdependentoutputfieldmappings.md - - docs/models/unifiedhrisdependentoutputremotedata.md - - docs/models/unifiedhrisdependentoutput.md - - docs/models/retrievehrisdependentrequest.md - - docs/models/listhrisemployeepayrollrunrequest.md - - docs/models/listhrisemployeepayrollrunresponsebody.md - - docs/models/listhrisemployeepayrollrunresponse.md - - docs/models/unifiedhrisemployeepayrollrunoutputfieldmappings.md - - docs/models/unifiedhrisemployeepayrollrunoutputremotedata.md - - docs/models/unifiedhrisemployeepayrollrunoutput.md - - docs/models/taxitem.md - - docs/models/earningitem.md - - docs/models/deductionitem.md - - docs/models/retrievehrisemployeepayrollrunrequest.md - - docs/models/listhrisemployeesrequest.md - - docs/models/listhrisemployeesresponsebody.md - - docs/models/listhrisemployeesresponse.md - - docs/models/unifiedhrisemployeeoutputfieldmappings.md - - docs/models/unifiedhrisemployeeoutputremotedata.md - - docs/models/unifiedhrisemployeeoutput.md - - docs/models/createhrisemployeerequest.md - - docs/models/unifiedhrisemployeeinputfieldmappings.md - - docs/models/unifiedhrisemployeeinput.md - - docs/models/retrievehrisemployeerequest.md - - docs/models/listhrisemployerbenefitsrequest.md - - docs/models/listhrisemployerbenefitsresponsebody.md - - docs/models/listhrisemployerbenefitsresponse.md - - docs/models/unifiedhrisemployerbenefitoutputfieldmappings.md - - docs/models/unifiedhrisemployerbenefitoutputremotedata.md - - docs/models/unifiedhrisemployerbenefitoutput.md - - docs/models/retrievehrisemployerbenefitrequest.md - - docs/models/listhrisemploymentsrequest.md - - docs/models/listhrisemploymentsresponsebody.md - - docs/models/listhrisemploymentsresponse.md - - docs/models/unifiedhrisemploymentoutputfieldmappings.md - - docs/models/unifiedhrisemploymentoutputremotedata.md - - docs/models/unifiedhrisemploymentoutput.md - - docs/models/retrievehrisemploymentrequest.md - - docs/models/listhrisgroupsrequest.md - - docs/models/listhrisgroupsresponsebody.md - - docs/models/listhrisgroupsresponse.md - - docs/models/unifiedhrisgroupoutputfieldmappings.md - - docs/models/unifiedhrisgroupoutputremotedata.md - - docs/models/unifiedhrisgroupoutput.md - - docs/models/retrievehrisgrouprequest.md - - docs/models/listhrislocationsrequest.md - - docs/models/listhrislocationsresponsebody.md - - docs/models/listhrislocationsresponse.md - - docs/models/unifiedhrislocationoutputfieldmappings.md - - docs/models/unifiedhrislocationoutputremotedata.md - - docs/models/unifiedhrislocationoutput.md - - docs/models/retrievehrislocationrequest.md - - docs/models/listhrispaygroupsrequest.md - - docs/models/listhrispaygroupsresponsebody.md - - docs/models/listhrispaygroupsresponse.md - - docs/models/unifiedhrispaygroupoutputfieldmappings.md - - docs/models/unifiedhrispaygroupoutputremotedata.md - - docs/models/unifiedhrispaygroupoutput.md - - docs/models/retrievehrispaygrouprequest.md - - docs/models/listhrispayrollrunsrequest.md - - docs/models/listhrispayrollrunsresponsebody.md - - docs/models/listhrispayrollrunsresponse.md - - docs/models/unifiedhrispayrollrunoutputfieldmappings.md - - docs/models/unifiedhrispayrollrunoutputremotedata.md - - docs/models/unifiedhrispayrollrunoutput.md - - docs/models/retrievehrispayrollrunrequest.md - - docs/models/listhristimeoffsrequest.md - - docs/models/listhristimeoffsresponsebody.md - - docs/models/listhristimeoffsresponse.md - - docs/models/unifiedhristimeoffoutputfieldmappings.md - - docs/models/unifiedhristimeoffoutputremotedata.md - - docs/models/unifiedhristimeoffoutput.md - - docs/models/createhristimeoffrequest.md - - docs/models/unifiedhristimeoffinputfieldmappings.md - - docs/models/unifiedhristimeoffinput.md - - docs/models/retrievehristimeoffrequest.md - - docs/models/listhristimeoffbalancesrequest.md - - docs/models/listhristimeoffbalancesresponsebody.md - - docs/models/listhristimeoffbalancesresponse.md - - docs/models/unifiedhristimeoffbalanceoutputfieldmappings.md - - docs/models/unifiedhristimeoffbalanceoutputremotedata.md - - docs/models/unifiedhristimeoffbalanceoutput.md - - docs/models/retrievehristimeoffbalancerequest.md - - docs/models/listhristimesheetentriesrequest.md - - docs/models/listhristimesheetentriesresponsebody.md - - docs/models/listhristimesheetentriesresponse.md - - docs/models/unifiedhristimesheetentryoutputfieldmappings.md - - docs/models/unifiedhristimesheetentryoutputremotedata.md - - docs/models/unifiedhristimesheetentryoutput.md - - docs/models/createhristimesheetentryrequest.md - - docs/models/unifiedhristimesheetentryinputfieldmappings.md - - docs/models/unifiedhristimesheetentryinput.md - - docs/models/retrievehristimesheetentryrequest.md - - docs/models/listmarketingautomationactionrequest.md - - docs/models/listmarketingautomationactionresponsebody.md - - docs/models/listmarketingautomationactionresponse.md - - docs/models/unifiedmarketingautomationactionoutput.md - - docs/models/createmarketingautomationactionrequest.md - - docs/models/unifiedmarketingautomationactioninput.md - - docs/models/retrievemarketingautomationactionrequest.md - - docs/models/listmarketingautomationautomationsrequest.md - - docs/models/listmarketingautomationautomationsresponsebody.md - - docs/models/listmarketingautomationautomationsresponse.md - - docs/models/unifiedmarketingautomationautomationoutput.md - - docs/models/createmarketingautomationautomationrequest.md - - docs/models/unifiedmarketingautomationautomationinput.md - - docs/models/retrievemarketingautomationautomationrequest.md - - docs/models/listmarketingautomationcampaignsrequest.md - - docs/models/listmarketingautomationcampaignsresponsebody.md - - docs/models/listmarketingautomationcampaignsresponse.md - - docs/models/unifiedmarketingautomationcampaignoutput.md - - docs/models/createmarketingautomationcampaignrequest.md - - docs/models/unifiedmarketingautomationcampaigninput.md - - docs/models/retrievemarketingautomationcampaignrequest.md - - docs/models/listmarketingautomationcontactsrequest.md - - docs/models/listmarketingautomationcontactsresponsebody.md - - docs/models/listmarketingautomationcontactsresponse.md - - docs/models/unifiedmarketingautomationcontactoutput.md - - docs/models/createmarketingautomationcontactrequest.md - - docs/models/unifiedmarketingautomationcontactinput.md - - docs/models/retrievemarketingautomationcontactrequest.md - - docs/models/listmarketingautomationemailsrequest.md - - docs/models/listmarketingautomationemailsresponsebody.md - - docs/models/listmarketingautomationemailsresponse.md - - docs/models/unifiedmarketingautomationemailoutput.md - - docs/models/retrievemarketingautomationemailrequest.md - - docs/models/listmarketingautomationeventsrequest.md - - docs/models/listmarketingautomationeventsresponsebody.md - - docs/models/listmarketingautomationeventsresponse.md - - docs/models/unifiedmarketingautomationeventoutput.md - - docs/models/retrievemarketingautomationeventrequest.md - - docs/models/listmarketingautomationlistsrequest.md - - docs/models/listmarketingautomationlistsresponsebody.md - - docs/models/listmarketingautomationlistsresponse.md - - docs/models/unifiedmarketingautomationlistoutput.md - - docs/models/createmarketingautomationlistrequest.md - - docs/models/unifiedmarketingautomationlistinput.md - - docs/models/retrievemarketingautomationlistrequest.md - - docs/models/listmarketingautomationmessagesrequest.md - - docs/models/listmarketingautomationmessagesresponsebody.md - - docs/models/listmarketingautomationmessagesresponse.md - - docs/models/unifiedmarketingautomationmessageoutput.md - - docs/models/retrievemarketingautomationmessagerequest.md - - docs/models/listmarketingautomationtemplatesrequest.md - - docs/models/listmarketingautomationtemplatesresponsebody.md - - docs/models/listmarketingautomationtemplatesresponse.md - - docs/models/unifiedmarketingautomationtemplateoutput.md - - docs/models/createmarketingautomationtemplaterequest.md - - docs/models/unifiedmarketingautomationtemplateinput.md - - docs/models/retrievemarketingautomationtemplaterequest.md - - docs/models/listmarketingautomationusersrequest.md - - docs/models/listmarketingautomationusersresponsebody.md - - docs/models/listmarketingautomationusersresponse.md - - docs/models/unifiedmarketingautomationuseroutput.md - - docs/models/retrievemarketingautomationuserrequest.md - - docs/models/listatsactivityrequest.md - - docs/models/listatsactivityresponsebody.md - - docs/models/listatsactivityresponse.md - - docs/models/unifiedatsactivityoutput.md - - docs/models/createatsactivityrequest.md - - docs/models/unifiedatsactivityinput.md - - docs/models/retrieveatsactivityrequest.md - - docs/models/listatsapplicationrequest.md - - docs/models/listatsapplicationresponsebody.md - - docs/models/listatsapplicationresponse.md - - docs/models/unifiedatsapplicationoutput.md - - docs/models/createatsapplicationrequest.md - - docs/models/unifiedatsapplicationinput.md - - docs/models/retrieveatsapplicationrequest.md - - docs/models/listatsattachmentrequest.md - - docs/models/listatsattachmentresponsebody.md - - docs/models/listatsattachmentresponse.md - - docs/models/unifiedatsattachmentoutput.md - - docs/models/createatsattachmentrequest.md - - docs/models/unifiedatsattachmentinput.md - - docs/models/retrieveatsattachmentrequest.md - - docs/models/listatscandidaterequest.md - - docs/models/listatscandidateresponsebody.md - - docs/models/listatscandidateresponse.md - - docs/models/unifiedatscandidateoutputattachments.md - - docs/models/applicationsmodel.md - - docs/models/unifiedatscandidateoutputtags.md - - docs/models/unifiedatscandidateoutput.md - - docs/models/url.md - - docs/models/unifiedatstagoutput.md - - docs/models/createatscandidaterequest.md - - docs/models/unifiedatscandidateinputattachments.md - - docs/models/unifiedatscandidateinputapplications.md - - docs/models/unifiedatscandidateinputtags.md - - docs/models/unifiedatscandidateinput.md - - docs/models/retrieveatscandidaterequest.md - - docs/models/listatsdepartmentsrequest.md - - docs/models/listatsdepartmentsresponsebody.md - - docs/models/listatsdepartmentsresponse.md - - docs/models/unifiedatsdepartmentoutput.md - - docs/models/retrieveatsdepartmentrequest.md - - docs/models/listatsinterviewrequest.md - - docs/models/listatsinterviewresponsebody.md - - docs/models/listatsinterviewresponse.md - - docs/models/unifiedatsinterviewoutput.md - - docs/models/createatsinterviewrequest.md - - docs/models/unifiedatsinterviewinput.md - - docs/models/retrieveatsinterviewrequest.md - - docs/models/listatsjobinterviewstagerequest.md - - docs/models/listatsjobinterviewstageresponsebody.md - - docs/models/listatsjobinterviewstageresponse.md - - docs/models/unifiedatsjobinterviewstageoutput.md - - docs/models/retrieveatsjobinterviewstagerequest.md - - docs/models/listatsjobrequest.md - - docs/models/listatsjobresponsebody.md - - docs/models/listatsjobresponse.md - - docs/models/unifiedatsjoboutput.md - - docs/models/retrieveatsjobrequest.md - - docs/models/listatsofferrequest.md - - docs/models/listatsofferresponsebody.md - - docs/models/listatsofferresponse.md - - docs/models/unifiedatsofferoutputcreatedat.md - - docs/models/unifiedatsofferoutputmodifiedat.md - - docs/models/unifiedatsofferoutput.md - - docs/models/retrieveatsofferrequest.md - - docs/models/listatsofficerequest.md - - docs/models/listatsofficeresponsebody.md - - docs/models/listatsofficeresponse.md - - docs/models/unifiedatsofficeoutput.md - - docs/models/retrieveatsofficerequest.md - - docs/models/listatsrejectreasonsrequest.md - - docs/models/listatsrejectreasonsresponsebody.md - - docs/models/listatsrejectreasonsresponse.md - - docs/models/unifiedatsrejectreasonoutput.md - - docs/models/retrieveatsrejectreasonrequest.md - - docs/models/listatsscorecardrequest.md - - docs/models/listatsscorecardresponsebody.md - - docs/models/listatsscorecardresponse.md - - docs/models/unifiedatsscorecardoutput.md - - docs/models/retrieveatsscorecardrequest.md - - docs/models/listatstagsrequest.md - - docs/models/listatstagsresponsebody.md - - docs/models/listatstagsresponse.md - - docs/models/retrieveatstagrequest.md - - docs/models/listatsusersrequest.md - - docs/models/listatsusersresponsebody.md - - docs/models/listatsusersresponse.md - - docs/models/unifiedatsuseroutput.md - - docs/models/retrieveatsuserrequest.md - - docs/models/listatseeocsrequest.md - - docs/models/listatseeocsresponsebody.md - - docs/models/listatseeocsresponse.md - - docs/models/unifiedatseeocsoutput.md - - docs/models/retrieveatseeocsrequest.md + - docs/models/itemsmodel.md + - docs/models/lineitem.md + - docs/models/linkeduserresponse.md - docs/models/listaccountingaccountsrequest.md - - docs/models/listaccountingaccountsresponsebody.md - docs/models/listaccountingaccountsresponse.md - - docs/models/unifiedaccountingaccountoutputfieldmappings.md - - docs/models/unifiedaccountingaccountoutputremotedata.md - - docs/models/unifiedaccountingaccountoutput.md - - docs/models/createaccountingaccountrequest.md - - docs/models/unifiedaccountingaccountinputfieldmappings.md - - docs/models/unifiedaccountingaccountinput.md - - docs/models/retrieveaccountingaccountrequest.md + - docs/models/listaccountingaccountsresponsebody.md - docs/models/listaccountingaddressrequest.md - - docs/models/listaccountingaddressresponsebody.md - docs/models/listaccountingaddressresponse.md - - docs/models/unifiedaccountingaddressoutputfieldmappings.md - - docs/models/unifiedaccountingaddressoutputremotedata.md - - docs/models/unifiedaccountingaddressoutput.md - - docs/models/retrieveaccountingaddressrequest.md + - docs/models/listaccountingaddressresponsebody.md - docs/models/listaccountingattachmentsrequest.md - - docs/models/listaccountingattachmentsresponsebody.md - docs/models/listaccountingattachmentsresponse.md - - docs/models/unifiedaccountingattachmentoutputfieldmappings.md - - docs/models/unifiedaccountingattachmentoutputremotedata.md - - docs/models/unifiedaccountingattachmentoutput.md - - docs/models/createaccountingattachmentrequest.md - - docs/models/unifiedaccountingattachmentinputfieldmappings.md - - docs/models/unifiedaccountingattachmentinput.md - - docs/models/retrieveaccountingattachmentrequest.md + - docs/models/listaccountingattachmentsresponsebody.md - docs/models/listaccountingbalancesheetsrequest.md - - docs/models/listaccountingbalancesheetsresponsebody.md - docs/models/listaccountingbalancesheetsresponse.md - - docs/models/unifiedaccountingbalancesheetoutputfieldmappings.md - - docs/models/unifiedaccountingbalancesheetoutputremotedata.md - - docs/models/unifiedaccountingbalancesheetoutput.md - - docs/models/lineitem.md - - docs/models/retrieveaccountingbalancesheetrequest.md + - docs/models/listaccountingbalancesheetsresponsebody.md - docs/models/listaccountingcashflowstatementrequest.md - - docs/models/listaccountingcashflowstatementresponsebody.md - docs/models/listaccountingcashflowstatementresponse.md - - docs/models/unifiedaccountingcashflowstatementoutputfieldmappings.md - - docs/models/unifiedaccountingcashflowstatementoutputremotedata.md - - docs/models/unifiedaccountingcashflowstatementoutput.md - - docs/models/retrieveaccountingcashflowstatementrequest.md + - docs/models/listaccountingcashflowstatementresponsebody.md - docs/models/listaccountingcompanyinfosrequest.md - - docs/models/listaccountingcompanyinfosresponsebody.md - docs/models/listaccountingcompanyinfosresponse.md - - docs/models/unifiedaccountingcompanyinfooutputfieldmappings.md - - docs/models/unifiedaccountingcompanyinfooutputremotedata.md - - docs/models/unifiedaccountingcompanyinfooutput.md - - docs/models/retrieveaccountingcompanyinforequest.md + - docs/models/listaccountingcompanyinfosresponsebody.md - docs/models/listaccountingcontactsrequest.md - - docs/models/listaccountingcontactsresponsebody.md - docs/models/listaccountingcontactsresponse.md - - docs/models/unifiedaccountingcontactoutputfieldmappings.md - - docs/models/unifiedaccountingcontactoutputremotedata.md - - docs/models/unifiedaccountingcontactoutput.md - - docs/models/createaccountingcontactrequest.md - - docs/models/unifiedaccountingcontactinputfieldmappings.md - - docs/models/unifiedaccountingcontactinput.md - - docs/models/retrieveaccountingcontactrequest.md + - docs/models/listaccountingcontactsresponsebody.md - docs/models/listaccountingcreditnoterequest.md - - docs/models/listaccountingcreditnoteresponsebody.md - docs/models/listaccountingcreditnoteresponse.md - - docs/models/unifiedaccountingcreditnoteoutputfieldmappings.md - - docs/models/unifiedaccountingcreditnoteoutputremotedata.md - - docs/models/unifiedaccountingcreditnoteoutput.md - - docs/models/retrieveaccountingcreditnoterequest.md + - docs/models/listaccountingcreditnoteresponsebody.md - docs/models/listaccountingexpenserequest.md - - docs/models/listaccountingexpenseresponsebody.md - docs/models/listaccountingexpenseresponse.md - - docs/models/unifiedaccountingexpenseoutputfieldmappings.md - - docs/models/unifiedaccountingexpenseoutputremotedata.md - - docs/models/unifiedaccountingexpenseoutput.md - - docs/models/createaccountingexpenserequest.md - - docs/models/unifiedaccountingexpenseinputfieldmappings.md - - docs/models/unifiedaccountingexpenseinput.md - - docs/models/retrieveaccountingexpenserequest.md + - docs/models/listaccountingexpenseresponsebody.md - docs/models/listaccountingincomestatementrequest.md - - docs/models/listaccountingincomestatementresponsebody.md - docs/models/listaccountingincomestatementresponse.md - - docs/models/unifiedaccountingincomestatementoutputfieldmappings.md - - docs/models/unifiedaccountingincomestatementoutputremotedata.md - - docs/models/unifiedaccountingincomestatementoutput.md - - docs/models/retrieveaccountingincomestatementrequest.md + - docs/models/listaccountingincomestatementresponsebody.md - docs/models/listaccountinginvoicerequest.md - - docs/models/listaccountinginvoiceresponsebody.md - docs/models/listaccountinginvoiceresponse.md - - docs/models/unifiedaccountinginvoiceoutputfieldmappings.md - - docs/models/unifiedaccountinginvoiceoutputremotedata.md - - docs/models/unifiedaccountinginvoiceoutput.md - - docs/models/createaccountinginvoicerequest.md - - docs/models/unifiedaccountinginvoiceinputfieldmappings.md - - docs/models/unifiedaccountinginvoiceinput.md - - docs/models/retrieveaccountinginvoicerequest.md + - docs/models/listaccountinginvoiceresponsebody.md - docs/models/listaccountingitemrequest.md - - docs/models/listaccountingitemresponsebody.md - docs/models/listaccountingitemresponse.md - - docs/models/unifiedaccountingitemoutputfieldmappings.md - - docs/models/unifiedaccountingitemoutputremotedata.md - - docs/models/unifiedaccountingitemoutput.md - - docs/models/retrieveaccountingitemrequest.md + - docs/models/listaccountingitemresponsebody.md - docs/models/listaccountingjournalentryrequest.md - - docs/models/listaccountingjournalentryresponsebody.md - docs/models/listaccountingjournalentryresponse.md - - docs/models/unifiedaccountingjournalentryoutputfieldmappings.md - - docs/models/unifiedaccountingjournalentryoutputremotedata.md - - docs/models/unifiedaccountingjournalentryoutput.md - - docs/models/createaccountingjournalentryrequest.md - - docs/models/unifiedaccountingjournalentryinputfieldmappings.md - - docs/models/unifiedaccountingjournalentryinput.md - - docs/models/retrieveaccountingjournalentryrequest.md + - docs/models/listaccountingjournalentryresponsebody.md - docs/models/listaccountingpaymentrequest.md - - docs/models/listaccountingpaymentresponsebody.md - docs/models/listaccountingpaymentresponse.md - - docs/models/unifiedaccountingpaymentoutputfieldmappings.md - - docs/models/unifiedaccountingpaymentoutputremotedata.md - - docs/models/unifiedaccountingpaymentoutput.md - - docs/models/createaccountingpaymentrequest.md - - docs/models/unifiedaccountingpaymentinputfieldmappings.md - - docs/models/unifiedaccountingpaymentinput.md - - docs/models/retrieveaccountingpaymentrequest.md + - docs/models/listaccountingpaymentresponsebody.md - docs/models/listaccountingphonenumberrequest.md - - docs/models/listaccountingphonenumberresponsebody.md - docs/models/listaccountingphonenumberresponse.md - - docs/models/unifiedaccountingphonenumberoutputfieldmappings.md - - docs/models/unifiedaccountingphonenumberoutputremotedata.md - - docs/models/unifiedaccountingphonenumberoutput.md - - docs/models/retrieveaccountingphonenumberrequest.md + - docs/models/listaccountingphonenumberresponsebody.md - docs/models/listaccountingpurchaseorderrequest.md - - docs/models/listaccountingpurchaseorderresponsebody.md - docs/models/listaccountingpurchaseorderresponse.md - - docs/models/unifiedaccountingpurchaseorderoutputfieldmappings.md - - docs/models/unifiedaccountingpurchaseorderoutputremotedata.md - - docs/models/unifiedaccountingpurchaseorderoutput.md - - docs/models/createaccountingpurchaseorderrequest.md - - docs/models/unifiedaccountingpurchaseorderinputfieldmappings.md - - docs/models/unifiedaccountingpurchaseorderinput.md - - docs/models/retrieveaccountingpurchaseorderrequest.md + - docs/models/listaccountingpurchaseorderresponsebody.md - docs/models/listaccountingtaxraterequest.md - - docs/models/listaccountingtaxrateresponsebody.md - docs/models/listaccountingtaxrateresponse.md - - docs/models/unifiedaccountingtaxrateoutputfieldmappings.md - - docs/models/unifiedaccountingtaxrateoutputremotedata.md - - docs/models/unifiedaccountingtaxrateoutput.md - - docs/models/retrieveaccountingtaxraterequest.md + - docs/models/listaccountingtaxrateresponsebody.md - docs/models/listaccountingtrackingcategorysrequest.md - - docs/models/listaccountingtrackingcategorysresponsebody.md - docs/models/listaccountingtrackingcategorysresponse.md - - docs/models/unifiedaccountingtrackingcategoryoutputfieldmappings.md - - docs/models/unifiedaccountingtrackingcategoryoutputremotedata.md - - docs/models/unifiedaccountingtrackingcategoryoutput.md - - docs/models/retrieveaccountingtrackingcategoryrequest.md + - docs/models/listaccountingtrackingcategorysresponsebody.md - docs/models/listaccountingtransactionrequest.md - - docs/models/listaccountingtransactionresponsebody.md - docs/models/listaccountingtransactionresponse.md - - docs/models/unifiedaccountingtransactionoutputfieldmappings.md - - docs/models/unifiedaccountingtransactionoutputremotedata.md - - docs/models/unifiedaccountingtransactionoutput.md - - docs/models/retrieveaccountingtransactionrequest.md + - docs/models/listaccountingtransactionresponsebody.md - docs/models/listaccountingvendorcreditrequest.md - - docs/models/listaccountingvendorcreditresponsebody.md - docs/models/listaccountingvendorcreditresponse.md - - docs/models/unifiedaccountingvendorcreditoutputfieldmappings.md - - docs/models/unifiedaccountingvendorcreditoutputremotedata.md - - docs/models/unifiedaccountingvendorcreditoutput.md - - docs/models/retrieveaccountingvendorcreditrequest.md - - docs/models/listecommerceproductsrequest.md - - docs/models/listecommerceproductsresponsebody.md - - docs/models/listecommerceproductsresponse.md - - docs/models/unifiedecommerceproductoutputfieldmappings.md - - docs/models/unifiedecommerceproductoutputremotedata.md - - docs/models/unifiedecommerceproductoutput.md - - docs/models/variant.md - - docs/models/createecommerceproductrequest.md - - docs/models/unifiedecommerceproductinputfieldmappings.md - - docs/models/unifiedecommerceproductinput.md - - docs/models/retrieveecommerceproductrequest.md - - docs/models/listecommerceordersrequest.md - - docs/models/listecommerceordersresponsebody.md - - docs/models/listecommerceordersresponse.md - - docs/models/unifiedecommerceorderoutputfieldmappings.md - - docs/models/unifiedecommerceorderoutputremotedata.md - - docs/models/unifiedecommerceorderoutput.md - - docs/models/createecommerceorderrequest.md - - docs/models/unifiedecommerceorderinputfieldmappings.md - - docs/models/unifiedecommerceorderinput.md - - docs/models/retrieveecommerceorderrequest.md + - docs/models/listaccountingvendorcreditresponsebody.md + - docs/models/listcrmcompanyrequest.md + - docs/models/listcrmcompanyresponse.md + - docs/models/listcrmcompanyresponsebody.md + - docs/models/listcrmcontactsrequest.md + - docs/models/listcrmcontactsresponse.md + - docs/models/listcrmcontactsresponsebody.md + - docs/models/listcrmdealsrequest.md + - docs/models/listcrmdealsresponse.md + - docs/models/listcrmdealsresponsebody.md + - docs/models/listcrmengagementsrequest.md + - docs/models/listcrmengagementsresponse.md + - docs/models/listcrmengagementsresponsebody.md + - docs/models/listcrmnoterequest.md + - docs/models/listcrmnoteresponse.md + - docs/models/listcrmnoteresponsebody.md + - docs/models/listcrmstagesrequest.md + - docs/models/listcrmstagesresponse.md + - docs/models/listcrmstagesresponsebody.md + - docs/models/listcrmtaskrequest.md + - docs/models/listcrmtaskresponse.md + - docs/models/listcrmtaskresponsebody.md + - docs/models/listcrmusersrequest.md + - docs/models/listcrmusersresponse.md + - docs/models/listcrmusersresponsebody.md - docs/models/listecommercecustomersrequest.md - - docs/models/listecommercecustomersresponsebody.md - docs/models/listecommercecustomersresponse.md - - docs/models/unifiedecommercecustomeroutputfieldmappings.md - - docs/models/unifiedecommercecustomeroutputremotedata.md - - docs/models/unifiedecommercecustomeroutput.md - - docs/models/retrieveecommercecustomerrequest.md + - docs/models/listecommercecustomersresponsebody.md - docs/models/listecommercefulfillmentsrequest.md - - docs/models/listecommercefulfillmentsresponsebody.md - docs/models/listecommercefulfillmentsresponse.md - - docs/models/itemsmodel.md - - docs/models/unifiedecommercefulfillmentoutputfieldmappings.md - - docs/models/unifiedecommercefulfillmentoutputremotedata.md - - docs/models/unifiedecommercefulfillmentoutput.md + - docs/models/listecommercefulfillmentsresponsebody.md + - docs/models/listecommerceordersrequest.md + - docs/models/listecommerceordersresponse.md + - docs/models/listecommerceordersresponsebody.md + - docs/models/listecommerceproductsrequest.md + - docs/models/listecommerceproductsresponse.md + - docs/models/listecommerceproductsresponsebody.md + - docs/models/listfilestoragefilerequest.md + - docs/models/listfilestoragefileresponse.md + - docs/models/listfilestoragefileresponsebody.md + - docs/models/listfilestoragefolderrequest.md + - docs/models/listfilestoragefolderresponse.md + - docs/models/listfilestoragefolderresponsebody.md + - docs/models/listfilestoragegrouprequest.md + - docs/models/listfilestoragegroupresponse.md + - docs/models/listfilestoragegroupresponsebody.md + - docs/models/listfilestorageusersrequest.md + - docs/models/listfilestorageusersresponse.md + - docs/models/listfilestorageusersresponsebody.md + - docs/models/listmarketingautomationactionrequest.md + - docs/models/listmarketingautomationactionresponse.md + - docs/models/listmarketingautomationactionresponsebody.md + - docs/models/listmarketingautomationautomationsrequest.md + - docs/models/listmarketingautomationautomationsresponse.md + - docs/models/listmarketingautomationautomationsresponsebody.md + - docs/models/listmarketingautomationcampaignsrequest.md + - docs/models/listmarketingautomationcampaignsresponse.md + - docs/models/listmarketingautomationcampaignsresponsebody.md + - docs/models/listmarketingautomationcontactsrequest.md + - docs/models/listmarketingautomationcontactsresponse.md + - docs/models/listmarketingautomationcontactsresponsebody.md + - docs/models/listmarketingautomationemailsrequest.md + - docs/models/listmarketingautomationemailsresponse.md + - docs/models/listmarketingautomationemailsresponsebody.md + - docs/models/listmarketingautomationeventsrequest.md + - docs/models/listmarketingautomationeventsresponse.md + - docs/models/listmarketingautomationeventsresponsebody.md + - docs/models/listmarketingautomationlistsrequest.md + - docs/models/listmarketingautomationlistsresponse.md + - docs/models/listmarketingautomationlistsresponsebody.md + - docs/models/listmarketingautomationmessagesrequest.md + - docs/models/listmarketingautomationmessagesresponse.md + - docs/models/listmarketingautomationmessagesresponsebody.md + - docs/models/listmarketingautomationtemplatesrequest.md + - docs/models/listmarketingautomationtemplatesresponse.md + - docs/models/listmarketingautomationtemplatesresponsebody.md + - docs/models/listmarketingautomationusersrequest.md + - docs/models/listmarketingautomationusersresponse.md + - docs/models/listmarketingautomationusersresponsebody.md + - docs/models/listticketingaccountrequest.md + - docs/models/listticketingaccountresponse.md + - docs/models/listticketingaccountresponsebody.md + - docs/models/listticketingattachmentsrequest.md + - docs/models/listticketingattachmentsresponse.md + - docs/models/listticketingattachmentsresponsebody.md + - docs/models/listticketingcollectionsrequest.md + - docs/models/listticketingcollectionsresponse.md + - docs/models/listticketingcollectionsresponsebody.md + - docs/models/listticketingcommentsrequest.md + - docs/models/listticketingcommentsresponse.md + - docs/models/listticketingcommentsresponsebody.md + - docs/models/listticketingcontactsrequest.md + - docs/models/listticketingcontactsresponse.md + - docs/models/listticketingcontactsresponsebody.md + - docs/models/listticketingtagsrequest.md + - docs/models/listticketingtagsresponse.md + - docs/models/listticketingtagsresponsebody.md + - docs/models/listticketingteamsrequest.md + - docs/models/listticketingteamsresponse.md + - docs/models/listticketingteamsresponsebody.md + - docs/models/listticketingticketrequest.md + - docs/models/listticketingticketresponse.md + - docs/models/listticketingticketresponsebody.md + - docs/models/listticketingusersrequest.md + - docs/models/listticketingusersresponse.md + - docs/models/listticketingusersresponsebody.md + - docs/models/logindto.md + - docs/models/mapfieldtoproviderdto.md + - docs/models/method.md + - docs/models/modifiedat.md + - docs/models/objecttypeowner.md + - docs/models/ownertype.md + - docs/models/passthroughrequestdto.md + - docs/models/passthroughrequestdtomethod.md + - docs/models/pathparamvertical.md + - docs/models/phone.md + - docs/models/projectresponse.md + - docs/models/querybody.md + - docs/models/queryrequest.md + - docs/models/ragqueryoutput.md + - docs/models/remotedata.md + - docs/models/remoteidrequest.md + - docs/models/requestformat.md + - docs/models/requestrequest.md + - docs/models/requestresponsebody.md + - docs/models/resyncstatusdto.md + - docs/models/retrieveaccountingaccountrequest.md + - docs/models/retrieveaccountingaddressrequest.md + - docs/models/retrieveaccountingattachmentrequest.md + - docs/models/retrieveaccountingbalancesheetrequest.md + - docs/models/retrieveaccountingcashflowstatementrequest.md + - docs/models/retrieveaccountingcompanyinforequest.md + - docs/models/retrieveaccountingcontactrequest.md + - docs/models/retrieveaccountingcreditnoterequest.md + - docs/models/retrieveaccountingexpenserequest.md + - docs/models/retrieveaccountingincomestatementrequest.md + - docs/models/retrieveaccountinginvoicerequest.md + - docs/models/retrieveaccountingitemrequest.md + - docs/models/retrieveaccountingjournalentryrequest.md + - docs/models/retrieveaccountingpaymentrequest.md + - docs/models/retrieveaccountingphonenumberrequest.md + - docs/models/retrieveaccountingpurchaseorderrequest.md + - docs/models/retrieveaccountingtaxraterequest.md + - docs/models/retrieveaccountingtrackingcategoryrequest.md + - docs/models/retrieveaccountingtransactionrequest.md + - docs/models/retrieveaccountingvendorcreditrequest.md + - docs/models/retrievecollectionrequest.md + - docs/models/retrievecrmcompanyrequest.md + - docs/models/retrievecrmcontactrequest.md + - docs/models/retrievecrmdealrequest.md + - docs/models/retrievecrmengagementrequest.md + - docs/models/retrievecrmnoterequest.md + - docs/models/retrievecrmstagerequest.md + - docs/models/retrievecrmtaskrequest.md + - docs/models/retrievecrmuserrequest.md + - docs/models/retrieveecommercecustomerrequest.md - docs/models/retrieveecommercefulfillmentrequest.md + - docs/models/retrieveecommerceorderrequest.md + - docs/models/retrieveecommerceproductrequest.md + - docs/models/retrievefilestoragefilerequest.md + - docs/models/retrievefilestoragefolderrequest.md + - docs/models/retrievefilestoragegrouprequest.md + - docs/models/retrievefilestorageuserrequest.md + - docs/models/retrievelinkeduserrequest.md + - docs/models/retrievemarketingautomationactionrequest.md + - docs/models/retrievemarketingautomationautomationrequest.md + - docs/models/retrievemarketingautomationcampaignrequest.md + - docs/models/retrievemarketingautomationcontactrequest.md + - docs/models/retrievemarketingautomationemailrequest.md + - docs/models/retrievemarketingautomationeventrequest.md + - docs/models/retrievemarketingautomationlistrequest.md + - docs/models/retrievemarketingautomationmessagerequest.md + - docs/models/retrievemarketingautomationtemplaterequest.md + - docs/models/retrievemarketingautomationuserrequest.md + - docs/models/retrieveticketingaccountrequest.md + - docs/models/retrieveticketingattachmentrequest.md + - docs/models/retrieveticketingcommentrequest.md + - docs/models/retrieveticketingcommentresponsebody.md + - docs/models/retrieveticketingcontactrequest.md + - docs/models/retrieveticketingcontactresponsebody.md + - docs/models/retrieveticketingtagrequest.md + - docs/models/retrieveticketingteamrequest.md + - docs/models/retrieveticketingticketrequest.md + - docs/models/retrieveticketinguserrequest.md - docs/models/security.md - - docs/models/utils/retryconfig.md - - docs/sdks/panora/README.md - - docs/sdks/rag/README.md - - docs/sdks/query/README.md - - docs/sdks/filestorage/README.md - - docs/sdks/files/README.md - - docs/sdks/folders/README.md - - docs/sdks/panoragroups/README.md - - docs/sdks/panorafilestorageusers/README.md - - docs/sdks/auth/README.md - - docs/sdks/login/README.md - - docs/sdks/connections/README.md - - docs/sdks/webhooks/README.md - - docs/sdks/ticketing/README.md - - docs/sdks/tickets/README.md - - docs/sdks/users/README.md - - docs/sdks/accounts/README.md - - docs/sdks/contacts/README.md - - docs/sdks/collections/README.md - - docs/sdks/comments/README.md - - docs/sdks/tags/README.md - - docs/sdks/teams/README.md - - docs/sdks/panoraticketingattachments/README.md - - docs/sdks/sync/README.md - - docs/sdks/crm/README.md - - docs/sdks/companies/README.md - - docs/sdks/panoracontacts/README.md - - docs/sdks/deals/README.md - - docs/sdks/engagements/README.md - - docs/sdks/notes/README.md - - docs/sdks/stages/README.md - - docs/sdks/tasks/README.md - - docs/sdks/panorausers/README.md - - docs/sdks/linkedusers/README.md - - docs/sdks/projects/README.md - - docs/sdks/fieldmappings/README.md - - docs/sdks/events/README.md - - docs/sdks/passthrough/README.md - - docs/sdks/retryid/README.md - - docs/sdks/hris/README.md - - docs/sdks/bankinfos/README.md - - docs/sdks/benefits/README.md - - docs/sdks/panoracompanies/README.md - - docs/sdks/dependents/README.md - - docs/sdks/employeepayrollruns/README.md - - docs/sdks/employees/README.md - - docs/sdks/employerbenefits/README.md - - docs/sdks/employments/README.md - - docs/sdks/groups/README.md - - docs/sdks/locations/README.md - - docs/sdks/paygroups/README.md - - docs/sdks/payrollruns/README.md - - docs/sdks/timeoffs/README.md - - docs/sdks/timeoffbalances/README.md - - docs/sdks/timesheetentries/README.md - - docs/sdks/marketingautomation/README.md - - docs/sdks/actions/README.md - - docs/sdks/automations/README.md - - docs/sdks/campaigns/README.md - - docs/sdks/panoramarketingautomationcontacts/README.md - - docs/sdks/emails/README.md - - docs/sdks/panoraevents/README.md - - docs/sdks/lists/README.md - - docs/sdks/messages/README.md - - docs/sdks/templates/README.md - - docs/sdks/panoramarketingautomationusers/README.md - - docs/sdks/ats/README.md - - docs/sdks/activities/README.md - - docs/sdks/applications/README.md - - docs/sdks/attachments/README.md - - docs/sdks/candidates/README.md - - docs/sdks/departments/README.md - - docs/sdks/interviews/README.md - - docs/sdks/jobinterviewstages/README.md - - docs/sdks/jobs/README.md - - docs/sdks/offers/README.md - - docs/sdks/offices/README.md - - docs/sdks/rejectreasons/README.md - - docs/sdks/scorecards/README.md - - docs/sdks/panoratags/README.md - - docs/sdks/panoraatsusers/README.md - - docs/sdks/eeocs/README.md + - docs/models/signatureverificationdto.md + - docs/models/status.md + - docs/models/statusrequest.md + - docs/models/tagsmodel.md + - docs/models/tokentype.md + - docs/models/type.md + - docs/models/unifiedaccountingaccountinput.md + - docs/models/unifiedaccountingaccountinputfieldmappings.md + - docs/models/unifiedaccountingaccountoutput.md + - docs/models/unifiedaccountingaddressoutput.md + - docs/models/unifiedaccountingaddressoutputfieldmappings.md + - docs/models/unifiedaccountingaddressoutputremotedata.md + - docs/models/unifiedaccountingattachmentinput.md + - docs/models/unifiedaccountingattachmentinputfieldmappings.md + - docs/models/unifiedaccountingattachmentoutput.md + - docs/models/unifiedaccountingattachmentoutputfieldmappings.md + - docs/models/unifiedaccountingattachmentoutputremotedata.md + - docs/models/unifiedaccountingbalancesheetoutput.md + - docs/models/unifiedaccountingbalancesheetoutputfieldmappings.md + - docs/models/unifiedaccountingbalancesheetoutputremotedata.md + - docs/models/unifiedaccountingcashflowstatementoutput.md + - docs/models/unifiedaccountingcashflowstatementoutputfieldmappings.md + - docs/models/unifiedaccountingcashflowstatementoutputremotedata.md + - docs/models/unifiedaccountingcompanyinfooutput.md + - docs/models/unifiedaccountingcompanyinfooutputfieldmappings.md + - docs/models/unifiedaccountingcompanyinfooutputremotedata.md + - docs/models/unifiedaccountingcontactinput.md + - docs/models/unifiedaccountingcontactinputfieldmappings.md + - docs/models/unifiedaccountingcontactoutput.md + - docs/models/unifiedaccountingcontactoutputfieldmappings.md + - docs/models/unifiedaccountingcontactoutputremotedata.md + - docs/models/unifiedaccountingcreditnoteoutput.md + - docs/models/unifiedaccountingcreditnoteoutputfieldmappings.md + - docs/models/unifiedaccountingcreditnoteoutputremotedata.md + - docs/models/unifiedaccountingexpenseinput.md + - docs/models/unifiedaccountingexpenseinputfieldmappings.md + - docs/models/unifiedaccountingexpenseoutput.md + - docs/models/unifiedaccountingexpenseoutputfieldmappings.md + - docs/models/unifiedaccountingexpenseoutputremotedata.md + - docs/models/unifiedaccountingincomestatementoutput.md + - docs/models/unifiedaccountingincomestatementoutputfieldmappings.md + - docs/models/unifiedaccountingincomestatementoutputremotedata.md + - docs/models/unifiedaccountinginvoiceinput.md + - docs/models/unifiedaccountinginvoiceinputfieldmappings.md + - docs/models/unifiedaccountinginvoiceoutput.md + - docs/models/unifiedaccountinginvoiceoutputfieldmappings.md + - docs/models/unifiedaccountinginvoiceoutputremotedata.md + - docs/models/unifiedaccountingitemoutput.md + - docs/models/unifiedaccountingitemoutputfieldmappings.md + - docs/models/unifiedaccountingitemoutputremotedata.md + - docs/models/unifiedaccountingjournalentryinput.md + - docs/models/unifiedaccountingjournalentryinputfieldmappings.md + - docs/models/unifiedaccountingjournalentryoutput.md + - docs/models/unifiedaccountingjournalentryoutputfieldmappings.md + - docs/models/unifiedaccountingjournalentryoutputremotedata.md + - docs/models/unifiedaccountingpaymentinput.md + - docs/models/unifiedaccountingpaymentinputfieldmappings.md + - docs/models/unifiedaccountingpaymentoutput.md + - docs/models/unifiedaccountingpaymentoutputfieldmappings.md + - docs/models/unifiedaccountingpaymentoutputremotedata.md + - docs/models/unifiedaccountingphonenumberoutput.md + - docs/models/unifiedaccountingphonenumberoutputfieldmappings.md + - docs/models/unifiedaccountingphonenumberoutputremotedata.md + - docs/models/unifiedaccountingpurchaseorderinput.md + - docs/models/unifiedaccountingpurchaseorderinputfieldmappings.md + - docs/models/unifiedaccountingpurchaseorderoutput.md + - docs/models/unifiedaccountingpurchaseorderoutputfieldmappings.md + - docs/models/unifiedaccountingpurchaseorderoutputremotedata.md + - docs/models/unifiedaccountingtaxrateoutput.md + - docs/models/unifiedaccountingtaxrateoutputfieldmappings.md + - docs/models/unifiedaccountingtaxrateoutputremotedata.md + - docs/models/unifiedaccountingtrackingcategoryoutput.md + - docs/models/unifiedaccountingtrackingcategoryoutputfieldmappings.md + - docs/models/unifiedaccountingtrackingcategoryoutputremotedata.md + - docs/models/unifiedaccountingtransactionoutput.md + - docs/models/unifiedaccountingtransactionoutputfieldmappings.md + - docs/models/unifiedaccountingtransactionoutputremotedata.md + - docs/models/unifiedaccountingvendorcreditoutput.md + - docs/models/unifiedaccountingvendorcreditoutputfieldmappings.md + - docs/models/unifiedaccountingvendorcreditoutputremotedata.md + - docs/models/unifiedcrmcompanyinput.md + - docs/models/unifiedcrmcompanyoutput.md + - docs/models/unifiedcrmcontactinput.md + - docs/models/unifiedcrmcontactoutput.md + - docs/models/unifiedcrmdealinput.md + - docs/models/unifiedcrmdealoutput.md + - docs/models/unifiedcrmengagementinput.md + - docs/models/unifiedcrmengagementoutput.md + - docs/models/unifiedcrmnoteinput.md + - docs/models/unifiedcrmnoteoutput.md + - docs/models/unifiedcrmstageoutput.md + - docs/models/unifiedcrmstageoutputcreatedat.md + - docs/models/unifiedcrmstageoutputmodifiedat.md + - docs/models/unifiedcrmtaskinput.md + - docs/models/unifiedcrmtaskoutput.md + - docs/models/unifiedcrmuseroutput.md + - docs/models/unifiedecommercecustomeroutput.md + - docs/models/unifiedecommercecustomeroutputfieldmappings.md + - docs/models/unifiedecommercecustomeroutputremotedata.md + - docs/models/unifiedecommercefulfillmentoutput.md + - docs/models/unifiedecommercefulfillmentoutputfieldmappings.md + - docs/models/unifiedecommercefulfillmentoutputremotedata.md + - docs/models/unifiedecommerceorderinput.md + - docs/models/unifiedecommerceorderinputfieldmappings.md + - docs/models/unifiedecommerceorderoutput.md + - docs/models/unifiedecommerceorderoutputfieldmappings.md + - docs/models/unifiedecommerceorderoutputremotedata.md + - docs/models/unifiedecommerceproductinput.md + - docs/models/unifiedecommerceproductinputfieldmappings.md + - docs/models/unifiedecommerceproductoutput.md + - docs/models/unifiedecommerceproductoutputfieldmappings.md + - docs/models/unifiedecommerceproductoutputremotedata.md + - docs/models/unifiedfilestoragefileinput.md + - docs/models/unifiedfilestoragefileoutput.md + - docs/models/unifiedfilestoragefolderinput.md + - docs/models/unifiedfilestoragefolderoutput.md + - docs/models/unifiedfilestoragegroupoutput.md + - docs/models/unifiedfilestorageuseroutput.md + - docs/models/unifiedmarketingautomationactioninput.md + - docs/models/unifiedmarketingautomationactionoutput.md + - docs/models/unifiedmarketingautomationautomationinput.md + - docs/models/unifiedmarketingautomationautomationoutput.md + - docs/models/unifiedmarketingautomationcampaigninput.md + - docs/models/unifiedmarketingautomationcampaignoutput.md + - docs/models/unifiedmarketingautomationcontactinput.md + - docs/models/unifiedmarketingautomationcontactoutput.md + - docs/models/unifiedmarketingautomationemailoutput.md + - docs/models/unifiedmarketingautomationeventoutput.md + - docs/models/unifiedmarketingautomationlistinput.md + - docs/models/unifiedmarketingautomationlistoutput.md + - docs/models/unifiedmarketingautomationmessageoutput.md + - docs/models/unifiedmarketingautomationtemplateinput.md + - docs/models/unifiedmarketingautomationtemplateoutput.md + - docs/models/unifiedmarketingautomationuseroutput.md + - docs/models/unifiedticketingaccountoutput.md + - docs/models/unifiedticketingattachmentinput.md + - docs/models/unifiedticketingattachmentoutput.md + - docs/models/unifiedticketingcollectionoutput.md + - docs/models/unifiedticketingcommentinput.md + - docs/models/unifiedticketingcommentinputattachments.md + - docs/models/unifiedticketingcommentoutput.md + - docs/models/unifiedticketingcommentoutputattachments.md + - docs/models/unifiedticketingcontactoutput.md + - docs/models/unifiedticketingtagoutput.md + - docs/models/unifiedticketingteamoutput.md + - docs/models/unifiedticketingticketinput.md + - docs/models/unifiedticketingticketinputattachments.md + - docs/models/unifiedticketingticketinputcollections.md + - docs/models/unifiedticketingticketinputcomment.md + - docs/models/unifiedticketingticketinputcommentattachments.md + - docs/models/unifiedticketingticketinputtags.md + - docs/models/unifiedticketingticketoutput.md + - docs/models/unifiedticketingticketoutputattachments.md + - docs/models/unifiedticketinguseroutput.md + - docs/models/updatepullfrequencydto.md + - docs/models/updatestatusrequest.md + - docs/models/usersmodel.md + - docs/models/utils/retryconfig.md + - docs/models/variant.md + - docs/models/vertical.md + - docs/models/webhookdto.md + - docs/models/webhookresponse.md - docs/sdks/accounting/README.md - - docs/sdks/panoraaccounts/README.md + - docs/sdks/accounts/README.md + - docs/sdks/actions/README.md - docs/sdks/addresses/README.md - - docs/sdks/panoraattachments/README.md + - docs/sdks/attachments/README.md + - docs/sdks/auth/README.md + - docs/sdks/automations/README.md - docs/sdks/balancesheets/README.md + - docs/sdks/campaigns/README.md - docs/sdks/cashflowstatements/README.md + - docs/sdks/collections/README.md + - docs/sdks/comments/README.md + - docs/sdks/companies/README.md - docs/sdks/companyinfos/README.md - - docs/sdks/panoraaccountingcontacts/README.md + - docs/sdks/connections/README.md + - docs/sdks/contacts/README.md - docs/sdks/creditnotes/README.md + - docs/sdks/crm/README.md + - docs/sdks/customers/README.md + - docs/sdks/deals/README.md + - docs/sdks/ecommerce/README.md + - docs/sdks/emails/README.md + - docs/sdks/engagements/README.md + - docs/sdks/events/README.md - docs/sdks/expenses/README.md + - docs/sdks/fieldmappings/README.md + - docs/sdks/files/README.md + - docs/sdks/filestorage/README.md + - docs/sdks/folders/README.md + - docs/sdks/fulfillments/README.md + - docs/sdks/groups/README.md - docs/sdks/incomestatements/README.md - docs/sdks/invoices/README.md - docs/sdks/items/README.md - docs/sdks/journalentries/README.md + - docs/sdks/linkedusers/README.md + - docs/sdks/lists/README.md + - docs/sdks/login/README.md + - docs/sdks/marketingautomation/README.md + - docs/sdks/messages/README.md + - docs/sdks/notes/README.md + - docs/sdks/orders/README.md + - docs/sdks/panora/README.md + - docs/sdks/panoraaccountingcontacts/README.md + - docs/sdks/panoraaccounts/README.md + - docs/sdks/panoraattachments/README.md + - docs/sdks/panoracontacts/README.md + - docs/sdks/panoraevents/README.md + - docs/sdks/panorafilestorageusers/README.md + - docs/sdks/panoramarketingautomationcontacts/README.md + - docs/sdks/panoramarketingautomationusers/README.md + - docs/sdks/panorausers/README.md + - docs/sdks/passthrough/README.md - docs/sdks/payments/README.md - docs/sdks/phonenumbers/README.md + - docs/sdks/products/README.md + - docs/sdks/projects/README.md - docs/sdks/purchaseorders/README.md + - docs/sdks/rag/README.md + - docs/sdks/retryid/README.md + - docs/sdks/stages/README.md + - docs/sdks/sync/README.md + - docs/sdks/tags/README.md + - docs/sdks/tasks/README.md - docs/sdks/taxrates/README.md + - docs/sdks/teams/README.md + - docs/sdks/templates/README.md + - docs/sdks/ticketing/README.md + - docs/sdks/tickets/README.md - docs/sdks/trackingcategories/README.md - docs/sdks/transactions/README.md + - docs/sdks/users/README.md - docs/sdks/vendorcredits/README.md - - docs/sdks/ecommerce/README.md - - docs/sdks/products/README.md - - docs/sdks/orders/README.md - - docs/sdks/customers/README.md - - docs/sdks/fulfillments/README.md - - USAGE.md - - .gitattributes + - docs/sdks/webhooks/README.md + - poetry.toml + - py.typed + - pylintrc + - pyproject.toml + - scripts/prepare-readme.py + - scripts/publish.sh + - src/panora_sdk/__init__.py + - src/panora_sdk/_hooks/__init__.py - src/panora_sdk/_hooks/sdkhooks.py - src/panora_sdk/_hooks/types.py - - src/panora_sdk/_hooks/__init__.py + - src/panora_sdk/_version.py + - src/panora_sdk/accounting.py + - src/panora_sdk/accounts.py + - src/panora_sdk/actions.py + - src/panora_sdk/addresses.py + - src/panora_sdk/attachments.py + - src/panora_sdk/auth.py + - src/panora_sdk/automations.py + - src/panora_sdk/balancesheets.py + - src/panora_sdk/basesdk.py + - src/panora_sdk/campaigns.py + - src/panora_sdk/cashflowstatements.py + - src/panora_sdk/collections.py + - src/panora_sdk/comments.py + - src/panora_sdk/companies.py + - src/panora_sdk/companyinfos.py + - src/panora_sdk/connections.py + - src/panora_sdk/contacts.py + - src/panora_sdk/creditnotes.py + - src/panora_sdk/crm.py + - src/panora_sdk/customers.py + - src/panora_sdk/deals.py + - src/panora_sdk/ecommerce.py + - src/panora_sdk/emails.py + - src/panora_sdk/engagements.py + - src/panora_sdk/events.py + - src/panora_sdk/expenses.py + - src/panora_sdk/fieldmappings.py + - src/panora_sdk/files.py + - src/panora_sdk/filestorage.py + - src/panora_sdk/folders.py + - src/panora_sdk/fulfillments.py + - src/panora_sdk/groups.py + - src/panora_sdk/httpclient.py + - src/panora_sdk/incomestatements.py + - src/panora_sdk/invoices.py + - src/panora_sdk/items.py + - src/panora_sdk/journalentries.py + - src/panora_sdk/linkedusers.py + - src/panora_sdk/lists.py + - src/panora_sdk/login.py + - src/panora_sdk/marketingautomation.py + - src/panora_sdk/messages.py + - src/panora_sdk/models/__init__.py + - src/panora_sdk/models/address.py + - src/panora_sdk/models/connection.py + - src/panora_sdk/models/createaccountingaccountop.py + - src/panora_sdk/models/createaccountingattachmentop.py + - src/panora_sdk/models/createaccountingcontactop.py + - src/panora_sdk/models/createaccountingexpenseop.py + - src/panora_sdk/models/createaccountinginvoiceop.py + - src/panora_sdk/models/createaccountingjournalentryop.py + - src/panora_sdk/models/createaccountingpaymentop.py + - src/panora_sdk/models/createaccountingpurchaseorderop.py + - src/panora_sdk/models/createbatchlinkeduserdto.py + - src/panora_sdk/models/createcrmcompanyop.py + - src/panora_sdk/models/createcrmcontactop.py + - src/panora_sdk/models/createcrmdealop.py + - src/panora_sdk/models/createcrmengagementop.py + - src/panora_sdk/models/createcrmnoteop.py + - src/panora_sdk/models/createcrmtaskop.py + - src/panora_sdk/models/createecommerceorderop.py + - src/panora_sdk/models/createecommerceproductop.py + - src/panora_sdk/models/createfilestoragefileop.py + - src/panora_sdk/models/createfilestoragefolderop.py + - src/panora_sdk/models/createlinkeduserdto.py + - src/panora_sdk/models/createmarketingautomationactionop.py + - src/panora_sdk/models/createmarketingautomationautomationop.py + - src/panora_sdk/models/createmarketingautomationcampaignop.py + - src/panora_sdk/models/createmarketingautomationcontactop.py + - src/panora_sdk/models/createmarketingautomationlistop.py + - src/panora_sdk/models/createmarketingautomationtemplateop.py + - src/panora_sdk/models/createprojectdto.py + - src/panora_sdk/models/createticketingattachmentop.py + - src/panora_sdk/models/createticketingcommentop.py + - src/panora_sdk/models/createticketingticketop.py + - src/panora_sdk/models/customfieldcreatedto.py + - src/panora_sdk/models/customfieldresponse.py + - src/panora_sdk/models/definetargetfielddto.py + - src/panora_sdk/models/deleteop.py + - src/panora_sdk/models/email.py + - src/panora_sdk/models/eventresponse.py + - src/panora_sdk/models/getpanoracoreeventsop.py + - src/panora_sdk/models/getretriedrequestresponseop.py + - src/panora_sdk/models/lineitem.py + - src/panora_sdk/models/linkeduserresponse.py + - src/panora_sdk/models/listaccountingaccountsop.py + - src/panora_sdk/models/listaccountingaddressop.py + - src/panora_sdk/models/listaccountingattachmentsop.py + - src/panora_sdk/models/listaccountingbalancesheetsop.py + - src/panora_sdk/models/listaccountingcashflowstatementop.py + - src/panora_sdk/models/listaccountingcompanyinfosop.py + - src/panora_sdk/models/listaccountingcontactsop.py + - src/panora_sdk/models/listaccountingcreditnoteop.py + - src/panora_sdk/models/listaccountingexpenseop.py + - src/panora_sdk/models/listaccountingincomestatementop.py + - src/panora_sdk/models/listaccountinginvoiceop.py + - src/panora_sdk/models/listaccountingitemop.py + - src/panora_sdk/models/listaccountingjournalentryop.py + - src/panora_sdk/models/listaccountingpaymentop.py + - src/panora_sdk/models/listaccountingphonenumberop.py + - src/panora_sdk/models/listaccountingpurchaseorderop.py + - src/panora_sdk/models/listaccountingtaxrateop.py + - src/panora_sdk/models/listaccountingtrackingcategorysop.py + - src/panora_sdk/models/listaccountingtransactionop.py + - src/panora_sdk/models/listaccountingvendorcreditop.py + - src/panora_sdk/models/listcrmcompanyop.py + - src/panora_sdk/models/listcrmcontactsop.py + - src/panora_sdk/models/listcrmdealsop.py + - src/panora_sdk/models/listcrmengagementsop.py + - src/panora_sdk/models/listcrmnoteop.py + - src/panora_sdk/models/listcrmstagesop.py + - src/panora_sdk/models/listcrmtaskop.py + - src/panora_sdk/models/listcrmusersop.py + - src/panora_sdk/models/listecommercecustomersop.py + - src/panora_sdk/models/listecommercefulfillmentsop.py + - src/panora_sdk/models/listecommerceordersop.py + - src/panora_sdk/models/listecommerceproductsop.py + - src/panora_sdk/models/listfilestoragefileop.py + - src/panora_sdk/models/listfilestoragefolderop.py + - src/panora_sdk/models/listfilestoragegroupop.py + - src/panora_sdk/models/listfilestorageusersop.py + - src/panora_sdk/models/listmarketingautomationactionop.py + - src/panora_sdk/models/listmarketingautomationautomationsop.py + - src/panora_sdk/models/listmarketingautomationcampaignsop.py + - src/panora_sdk/models/listmarketingautomationcontactsop.py + - src/panora_sdk/models/listmarketingautomationemailsop.py + - src/panora_sdk/models/listmarketingautomationeventsop.py + - src/panora_sdk/models/listmarketingautomationlistsop.py + - src/panora_sdk/models/listmarketingautomationmessagesop.py + - src/panora_sdk/models/listmarketingautomationtemplatesop.py + - src/panora_sdk/models/listmarketingautomationusersop.py + - src/panora_sdk/models/listticketingaccountop.py + - src/panora_sdk/models/listticketingattachmentsop.py + - src/panora_sdk/models/listticketingcollectionsop.py + - src/panora_sdk/models/listticketingcommentsop.py + - src/panora_sdk/models/listticketingcontactsop.py + - src/panora_sdk/models/listticketingtagsop.py + - src/panora_sdk/models/listticketingteamsop.py + - src/panora_sdk/models/listticketingticketop.py + - src/panora_sdk/models/listticketingusersop.py + - src/panora_sdk/models/logindto.py + - src/panora_sdk/models/mapfieldtoproviderdto.py + - src/panora_sdk/models/passthroughrequestdto.py + - src/panora_sdk/models/phone.py + - src/panora_sdk/models/projectresponse.py + - src/panora_sdk/models/querybody.py + - src/panora_sdk/models/queryop.py + - src/panora_sdk/models/ragqueryoutput.py + - src/panora_sdk/models/remoteidop.py + - src/panora_sdk/models/requestop.py + - src/panora_sdk/models/resyncstatusdto.py + - src/panora_sdk/models/retrieveaccountingaccountop.py + - src/panora_sdk/models/retrieveaccountingaddressop.py + - src/panora_sdk/models/retrieveaccountingattachmentop.py + - src/panora_sdk/models/retrieveaccountingbalancesheetop.py + - src/panora_sdk/models/retrieveaccountingcashflowstatementop.py + - src/panora_sdk/models/retrieveaccountingcompanyinfoop.py + - src/panora_sdk/models/retrieveaccountingcontactop.py + - src/panora_sdk/models/retrieveaccountingcreditnoteop.py + - src/panora_sdk/models/retrieveaccountingexpenseop.py + - src/panora_sdk/models/retrieveaccountingincomestatementop.py + - src/panora_sdk/models/retrieveaccountinginvoiceop.py + - src/panora_sdk/models/retrieveaccountingitemop.py + - src/panora_sdk/models/retrieveaccountingjournalentryop.py + - src/panora_sdk/models/retrieveaccountingpaymentop.py + - src/panora_sdk/models/retrieveaccountingphonenumberop.py + - src/panora_sdk/models/retrieveaccountingpurchaseorderop.py + - src/panora_sdk/models/retrieveaccountingtaxrateop.py + - src/panora_sdk/models/retrieveaccountingtrackingcategoryop.py + - src/panora_sdk/models/retrieveaccountingtransactionop.py + - src/panora_sdk/models/retrieveaccountingvendorcreditop.py + - src/panora_sdk/models/retrievecollectionop.py + - src/panora_sdk/models/retrievecrmcompanyop.py + - src/panora_sdk/models/retrievecrmcontactop.py + - src/panora_sdk/models/retrievecrmdealop.py + - src/panora_sdk/models/retrievecrmengagementop.py + - src/panora_sdk/models/retrievecrmnoteop.py + - src/panora_sdk/models/retrievecrmstageop.py + - src/panora_sdk/models/retrievecrmtaskop.py + - src/panora_sdk/models/retrievecrmuserop.py + - src/panora_sdk/models/retrieveecommercecustomerop.py + - src/panora_sdk/models/retrieveecommercefulfillmentop.py + - src/panora_sdk/models/retrieveecommerceorderop.py + - src/panora_sdk/models/retrieveecommerceproductop.py + - src/panora_sdk/models/retrievefilestoragefileop.py + - src/panora_sdk/models/retrievefilestoragefolderop.py + - src/panora_sdk/models/retrievefilestoragegroupop.py + - src/panora_sdk/models/retrievefilestorageuserop.py + - src/panora_sdk/models/retrievelinkeduserop.py + - src/panora_sdk/models/retrievemarketingautomationactionop.py + - src/panora_sdk/models/retrievemarketingautomationautomationop.py + - src/panora_sdk/models/retrievemarketingautomationcampaignop.py + - src/panora_sdk/models/retrievemarketingautomationcontactop.py + - src/panora_sdk/models/retrievemarketingautomationemailop.py + - src/panora_sdk/models/retrievemarketingautomationeventop.py + - src/panora_sdk/models/retrievemarketingautomationlistop.py + - src/panora_sdk/models/retrievemarketingautomationmessageop.py + - src/panora_sdk/models/retrievemarketingautomationtemplateop.py + - src/panora_sdk/models/retrievemarketingautomationuserop.py + - src/panora_sdk/models/retrieveticketingaccountop.py + - src/panora_sdk/models/retrieveticketingattachmentop.py + - src/panora_sdk/models/retrieveticketingcommentop.py + - src/panora_sdk/models/retrieveticketingcontactop.py + - src/panora_sdk/models/retrieveticketingtagop.py + - src/panora_sdk/models/retrieveticketingteamop.py + - src/panora_sdk/models/retrieveticketingticketop.py + - src/panora_sdk/models/retrieveticketinguserop.py + - src/panora_sdk/models/sdkerror.py + - src/panora_sdk/models/security.py + - src/panora_sdk/models/signatureverificationdto.py + - src/panora_sdk/models/statusop.py + - src/panora_sdk/models/unifiedaccountingaccountinput.py + - src/panora_sdk/models/unifiedaccountingaccountoutput.py + - src/panora_sdk/models/unifiedaccountingaddressoutput.py + - src/panora_sdk/models/unifiedaccountingattachmentinput.py + - src/panora_sdk/models/unifiedaccountingattachmentoutput.py + - src/panora_sdk/models/unifiedaccountingbalancesheetoutput.py + - src/panora_sdk/models/unifiedaccountingcashflowstatementoutput.py + - src/panora_sdk/models/unifiedaccountingcompanyinfooutput.py + - src/panora_sdk/models/unifiedaccountingcontactinput.py + - src/panora_sdk/models/unifiedaccountingcontactoutput.py + - src/panora_sdk/models/unifiedaccountingcreditnoteoutput.py + - src/panora_sdk/models/unifiedaccountingexpenseinput.py + - src/panora_sdk/models/unifiedaccountingexpenseoutput.py + - src/panora_sdk/models/unifiedaccountingincomestatementoutput.py + - src/panora_sdk/models/unifiedaccountinginvoiceinput.py + - src/panora_sdk/models/unifiedaccountinginvoiceoutput.py + - src/panora_sdk/models/unifiedaccountingitemoutput.py + - src/panora_sdk/models/unifiedaccountingjournalentryinput.py + - src/panora_sdk/models/unifiedaccountingjournalentryoutput.py + - src/panora_sdk/models/unifiedaccountingpaymentinput.py + - src/panora_sdk/models/unifiedaccountingpaymentoutput.py + - src/panora_sdk/models/unifiedaccountingphonenumberoutput.py + - src/panora_sdk/models/unifiedaccountingpurchaseorderinput.py + - src/panora_sdk/models/unifiedaccountingpurchaseorderoutput.py + - src/panora_sdk/models/unifiedaccountingtaxrateoutput.py + - src/panora_sdk/models/unifiedaccountingtrackingcategoryoutput.py + - src/panora_sdk/models/unifiedaccountingtransactionoutput.py + - src/panora_sdk/models/unifiedaccountingvendorcreditoutput.py + - src/panora_sdk/models/unifiedcrmcompanyinput.py + - src/panora_sdk/models/unifiedcrmcompanyoutput.py + - src/panora_sdk/models/unifiedcrmcontactinput.py + - src/panora_sdk/models/unifiedcrmcontactoutput.py + - src/panora_sdk/models/unifiedcrmdealinput.py + - src/panora_sdk/models/unifiedcrmdealoutput.py + - src/panora_sdk/models/unifiedcrmengagementinput.py + - src/panora_sdk/models/unifiedcrmengagementoutput.py + - src/panora_sdk/models/unifiedcrmnoteinput.py + - src/panora_sdk/models/unifiedcrmnoteoutput.py + - src/panora_sdk/models/unifiedcrmstageoutput.py + - src/panora_sdk/models/unifiedcrmtaskinput.py + - src/panora_sdk/models/unifiedcrmtaskoutput.py + - src/panora_sdk/models/unifiedcrmuseroutput.py + - src/panora_sdk/models/unifiedecommercecustomeroutput.py + - src/panora_sdk/models/unifiedecommercefulfillmentoutput.py + - src/panora_sdk/models/unifiedecommerceorderinput.py + - src/panora_sdk/models/unifiedecommerceorderoutput.py + - src/panora_sdk/models/unifiedecommerceproductinput.py + - src/panora_sdk/models/unifiedecommerceproductoutput.py + - src/panora_sdk/models/unifiedfilestoragefileinput.py + - src/panora_sdk/models/unifiedfilestoragefileoutput.py + - src/panora_sdk/models/unifiedfilestoragefolderinput.py + - src/panora_sdk/models/unifiedfilestoragefolderoutput.py + - src/panora_sdk/models/unifiedfilestoragegroupoutput.py + - src/panora_sdk/models/unifiedfilestorageuseroutput.py + - src/panora_sdk/models/unifiedmarketingautomationactioninput.py + - src/panora_sdk/models/unifiedmarketingautomationactionoutput.py + - src/panora_sdk/models/unifiedmarketingautomationautomationinput.py + - src/panora_sdk/models/unifiedmarketingautomationautomationoutput.py + - src/panora_sdk/models/unifiedmarketingautomationcampaigninput.py + - src/panora_sdk/models/unifiedmarketingautomationcampaignoutput.py + - src/panora_sdk/models/unifiedmarketingautomationcontactinput.py + - src/panora_sdk/models/unifiedmarketingautomationcontactoutput.py + - src/panora_sdk/models/unifiedmarketingautomationemailoutput.py + - src/panora_sdk/models/unifiedmarketingautomationeventoutput.py + - src/panora_sdk/models/unifiedmarketingautomationlistinput.py + - src/panora_sdk/models/unifiedmarketingautomationlistoutput.py + - src/panora_sdk/models/unifiedmarketingautomationmessageoutput.py + - src/panora_sdk/models/unifiedmarketingautomationtemplateinput.py + - src/panora_sdk/models/unifiedmarketingautomationtemplateoutput.py + - src/panora_sdk/models/unifiedmarketingautomationuseroutput.py + - src/panora_sdk/models/unifiedticketingaccountoutput.py + - src/panora_sdk/models/unifiedticketingattachmentinput.py + - src/panora_sdk/models/unifiedticketingattachmentoutput.py + - src/panora_sdk/models/unifiedticketingcollectionoutput.py + - src/panora_sdk/models/unifiedticketingcommentinput.py + - src/panora_sdk/models/unifiedticketingcommentoutput.py + - src/panora_sdk/models/unifiedticketingcontactoutput.py + - src/panora_sdk/models/unifiedticketingtagoutput.py + - src/panora_sdk/models/unifiedticketingteamoutput.py + - src/panora_sdk/models/unifiedticketingticketinput.py + - src/panora_sdk/models/unifiedticketingticketoutput.py + - src/panora_sdk/models/unifiedticketinguseroutput.py + - src/panora_sdk/models/updatepullfrequencydto.py + - src/panora_sdk/models/updatestatusop.py + - src/panora_sdk/models/variant.py + - src/panora_sdk/models/webhookdto.py + - src/panora_sdk/models/webhookresponse.py + - src/panora_sdk/notes.py + - src/panora_sdk/orders.py + - src/panora_sdk/panora_accounting_contacts.py + - src/panora_sdk/panora_accounts.py + - src/panora_sdk/panora_attachments.py + - src/panora_sdk/panora_contacts.py + - src/panora_sdk/panora_events.py + - src/panora_sdk/panora_filestorage_users.py + - src/panora_sdk/panora_marketingautomation_contacts.py + - src/panora_sdk/panora_marketingautomation_users.py + - src/panora_sdk/panora_users.py + - src/panora_sdk/passthrough.py + - src/panora_sdk/payments.py + - src/panora_sdk/phonenumbers.py + - src/panora_sdk/products.py + - src/panora_sdk/projects.py + - src/panora_sdk/purchaseorders.py + - src/panora_sdk/py.typed + - src/panora_sdk/rag.py + - src/panora_sdk/retryid_.py + - src/panora_sdk/sdk.py + - src/panora_sdk/sdkconfiguration.py + - src/panora_sdk/stages.py + - src/panora_sdk/sync.py + - src/panora_sdk/tags.py + - src/panora_sdk/tasks.py + - src/panora_sdk/taxrates.py + - src/panora_sdk/teams.py + - src/panora_sdk/templates.py + - src/panora_sdk/ticketing.py + - src/panora_sdk/tickets.py + - src/panora_sdk/trackingcategories.py + - src/panora_sdk/transactions.py + - src/panora_sdk/types/__init__.py + - src/panora_sdk/types/basemodel.py + - src/panora_sdk/users.py + - src/panora_sdk/utils/__init__.py + - src/panora_sdk/utils/annotations.py + - src/panora_sdk/utils/enums.py + - src/panora_sdk/utils/eventstreaming.py + - src/panora_sdk/utils/forms.py + - src/panora_sdk/utils/headers.py + - src/panora_sdk/utils/logger.py + - src/panora_sdk/utils/metadata.py + - src/panora_sdk/utils/queryparams.py + - src/panora_sdk/utils/requestbodies.py + - src/panora_sdk/utils/retries.py + - src/panora_sdk/utils/security.py + - src/panora_sdk/utils/serializers.py + - src/panora_sdk/utils/url.py + - src/panora_sdk/utils/values.py + - src/panora_sdk/vendorcredits.py + - src/panora_sdk/webhooks.py examples: RagController_queryEmbeddings: speakeasy-default-rag-controller-query-embeddings: {} createAccountingAccount: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - account_number: "1000" - classification: Asset - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - currency: USD - current_balance: 10000 - description: Main cash account for daily operations - name: Cash - parent_account: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - status: Active - type: Current Asset + application/json: {"name": "Cash", "description": "Main cash account for daily operations", "classification": "Asset", "type": "Current Asset", "status": "Active", "current_balance": 10000, "currency": "USD", "account_number": "1000", "parent_account": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} responses: "201": - application/json: - account_number: "1000" - classification: Asset - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - current_balance: 10000 - description: Main cash account for daily operations - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - name: Cash - parent_account: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_id: account_1234 - status: Active - type: Current Asset + application/json: {"name": "Cash", "description": "Main cash account for daily operations", "classification": "Asset", "type": "Current Asset", "status": "Active", "current_balance": 10000, "currency": "USD", "account_number": "1000", "parent_account": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "account_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAccountingAttachment: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - file_name: invoice.pdf - file_url: https://example.com/files/invoice.pdf + application/json: {"file_name": "invoice.pdf", "file_url": "https://example.com/files/invoice.pdf", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} responses: "201": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - file_name: invoice.pdf - file_url: https://example.com/files/invoice.pdf - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - remote_id: attachment_1234 + application/json: {"file_name": "invoice.pdf", "file_url": "https://example.com/files/invoice.pdf", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "attachment_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAccountingContact: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - currency: USD - email_address: john.doe@example.com - is_customer: false - is_supplier: true - name: John Doe - remote_updated_at: "2024-06-15T12:00:00Z" - status: Active - tax_number: "123456789" + application/json: {"name": "John Doe", "is_supplier": true, "is_customer": false, "email_address": "john.doe@example.com", "tax_number": "123456789", "status": "Active", "currency": "USD", "remote_updated_at": "2024-06-15T12:00:00Z", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} responses: "201": - application/json: - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - email_address: john.doe@example.com - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - is_customer: false - is_supplier: true - modified_at: "2024-06-15T12:00:00Z" - name: John Doe - remote_id: contact_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - status: Active - tax_number: "123456789" + application/json: {"name": "John Doe", "is_supplier": true, "is_customer": false, "email_address": "john.doe@example.com", "tax_number": "123456789", "status": "Active", "currency": "USD", "remote_updated_at": "2024-06-15T12:00:00Z", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "contact_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAccountingExpense: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - currency: USD - exchange_rate: "1.2" - line_items: [] - memo: Business lunch with client - sub_total: 9000 - total_amount: 10000 - total_tax_amount: 1000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" + application/json: {"transaction_date": "2024-06-15T12:00:00Z", "total_amount": 10000, "sub_total": 9000, "total_tax_amount": 1000, "currency": "USD", "exchange_rate": "1.2", "memo": "Business lunch with client", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": []} responses: "201": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - memo: Business lunch with client - modified_at: "2024-06-15T12:00:00Z" - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: expense_1234 - sub_total: 9000 - total_amount: 10000 - total_tax_amount: 1000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" + application/json: {"transaction_date": "2024-06-15T12:00:00Z", "total_amount": 10000, "sub_total": 9000, "total_tax_amount": 1000, "currency": "USD", "exchange_rate": "1.2", "memo": "Business lunch with client", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "expense_1234", "remote_created_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAccountingInvoice: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - balance: 0 - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - currency: USD - due_date: "2024-07-15T12:00:00Z" - exchange_rate: "1.2" - issue_date: "2024-06-15T12:00:00Z" - line_items: [] - memo: Payment for services rendered - number: INV-001 - paid_on_date: "2024-07-10T12:00:00Z" - status: Paid - sub_total: 10000 - total_amount: 11000 - total_discount: 1000 - total_tax_amount: 1000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - type: Sales + application/json: {"type": "Sales", "number": "INV-001", "issue_date": "2024-06-15T12:00:00Z", "due_date": "2024-07-15T12:00:00Z", "paid_on_date": "2024-07-10T12:00:00Z", "memo": "Payment for services rendered", "currency": "USD", "exchange_rate": "1.2", "total_discount": 1000, "sub_total": 10000, "status": "Paid", "total_tax_amount": 1000, "total_amount": 11000, "balance": 0, "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f", "801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": []} responses: "201": - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - balance: 0 - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - due_date: "2024-07-15T12:00:00Z" - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - issue_date: "2024-06-15T12:00:00Z" - line_items: [] - memo: Payment for services rendered - modified_at: "2024-06-15T12:00:00Z" - number: INV-001 - paid_on_date: "2024-07-10T12:00:00Z" - remote_id: invoice_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - status: Paid - sub_total: 10000 - total_amount: 11000 - total_discount: 1000 - total_tax_amount: 1000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - type: Sales + application/json: {"type": "Sales", "number": "INV-001", "issue_date": "2024-06-15T12:00:00Z", "due_date": "2024-07-15T12:00:00Z", "paid_on_date": "2024-07-10T12:00:00Z", "memo": "Payment for services rendered", "currency": "USD", "exchange_rate": "1.2", "total_discount": 1000, "sub_total": 10000, "status": "Paid", "total_tax_amount": 1000, "total_amount": 11000, "balance": 0, "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f", "801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "invoice_1234", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAccountingJournalEntry: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - applied_payments: - - appliedPayment1 - - appliedPayment2 - currency: USD - exchange_rate: "1.2" - id_acc_accounting_period: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_acc_company_info: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - journal_number: JE-001 - line_items: [] - memo: Monthly expense journal entry - payments: - - payment1 - - payment2 - posting_status: Posted - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" + application/json: {"transaction_date": "2024-06-15T12:00:00Z", "payments": ["payment1", "payment2"], "applied_payments": ["appliedPayment1", "appliedPayment2"], "memo": "Monthly expense journal entry", "currency": "USD", "exchange_rate": "1.2", "id_acc_company_info": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "journal_number": "JE-001", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "id_acc_accounting_period": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "posting_status": "Posted", "line_items": []} responses: "201": - application/json: - applied_payments: - - appliedPayment1 - - appliedPayment2 - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_acc_accounting_period: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_acc_company_info: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - journal_number: JE-001 - line_items: [] - memo: Monthly expense journal entry - modified_at: "2024-06-15T12:00:00Z" - payments: - - payment1 - - payment2 - posting_status: Posted - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: journal_entry_1234 - remote_modiified_at: "2024-06-15T12:00:00Z" - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" + application/json: {"transaction_date": "2024-06-15T12:00:00Z", "payments": ["payment1", "payment2"], "applied_payments": ["appliedPayment1", "appliedPayment2"], "memo": "Monthly expense journal entry", "currency": "USD", "exchange_rate": "1.2", "id_acc_company_info": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "journal_number": "JE-001", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "id_acc_accounting_period": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "posting_status": "Posted", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "journal_entry_1234", "remote_created_at": "2024-06-15T12:00:00Z", "remote_modiified_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAccountingPayment: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - currency: USD - exchange_rate: "1.2" - invoice_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - total_amount: 10000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" - type: Credit Card + application/json: {"invoice_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "transaction_date": "2024-06-15T12:00:00Z", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "currency": "USD", "exchange_rate": "1.2", "total_amount": 10000, "type": "Credit Card", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": []} responses: "201": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - invoice_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - modified_at: "2024-06-15T12:00:00Z" - remote_id: payment_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - total_amount: 10000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" - type: Credit Card + application/json: {"invoice_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "transaction_date": "2024-06-15T12:00:00Z", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "currency": "USD", "exchange_rate": "1.2", "total_amount": 10000, "type": "Credit Card", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "payment_1234", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAccountingPurchaseOrder: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - currency: USD - customer: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - delivery_address: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - delivery_date: "2024-07-15T12:00:00Z" - exchange_rate: "1.2" - issue_date: "2024-06-15T12:00:00Z" - line_items: [] - memo: Purchase order for Q3 inventory - purchase_order_number: PO-001 - status: Pending - total_amount: 100000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - vendor: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"status": "Pending", "issue_date": "2024-06-15T12:00:00Z", "purchase_order_number": "PO-001", "delivery_date": "2024-07-15T12:00:00Z", "delivery_address": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "customer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "vendor": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "memo": "Purchase order for Q3 inventory", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "total_amount": 100000, "currency": "USD", "exchange_rate": "1.2", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "line_items": []} responses: "201": - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - customer: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - delivery_address: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - delivery_date: "2024-07-15T12:00:00Z" - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - issue_date: "2024-06-15T12:00:00Z" - line_items: [] - memo: Purchase order for Q3 inventory - modified_at: "2024-06-15T12:00:00Z" - purchase_order_number: PO-001 - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: po_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - status: Pending - total_amount: 100000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - vendor: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"status": "Pending", "issue_date": "2024-06-15T12:00:00Z", "purchase_order_number": "PO-001", "delivery_date": "2024-07-15T12:00:00Z", "delivery_address": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "customer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "vendor": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "memo": "Purchase order for Q3 inventory", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "total_amount": 100000, "currency": "USD", "exchange_rate": "1.2", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "po_1234", "remote_created_at": "2024-06-15T12:00:00Z", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} createAtsActivity: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: requestBody: application/json: activity_type: NOTE @@ -1700,10 +1071,10 @@ examples: createAtsApplication: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: requestBody: application/json: applied_at: "2024-10-01T12:00:00Z" @@ -1747,10 +1118,10 @@ examples: createAtsAttachment: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: requestBody: application/json: attachment_type: RESUME @@ -1784,10 +1155,10 @@ examples: createAtsCandidate: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: requestBody: application/json: applications: @@ -1861,10 +1232,10 @@ examples: createAtsInterview: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: requestBody: application/json: application_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f @@ -1908,458 +1279,127 @@ examples: createCrmCompany: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - addresses: - - address_type: WORK - city: New York - country: USA - owner_type: - postal_code: "10001" - state: NY - street_1: 5th Avenue - street_2: Street 2 - email_addresses: - - email_address: acme@gmail.com - email_address_type: WORK - field_mappings: - fav_color: red - fav_dish: broccoli - industry: ACCOUNTING - name: Acme - number_of_employees: 10 - phone_numbers: - - phone_number: "+33660606067" - phone_type: WORK - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"name": "Acme", "industry": "ACCOUNTING", "number_of_employees": 10, "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "email_addresses": [{"email_address": "acme@gmail.com", "email_address_type": "WORK"}], "addresses": [{"street_1": "5th Avenue", "street_2": "Street 2", "city": "New York", "state": "NY", "postal_code": "10001", "country": "USA", "address_type": "WORK", "owner_type": ""}], "phone_numbers": [{"phone_number": "+33660606067", "phone_type": "WORK"}], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - addresses: - - address_type: WORK - city: New York - country: USA - owner_type: - postal_code: "10001" - state: NY - street_1: 5th Avenue - street_2: Street 2 - email_addresses: - - email_address: acme@gmail.com - email_address_type: WORK - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - industry: ACCOUNTING - name: Acme - number_of_employees: 10 - phone_numbers: - - phone_number: "+33660606067" - phone_type: WORK - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"name": "Acme", "industry": "ACCOUNTING", "number_of_employees": 10, "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "email_addresses": [{"email_address": "acme@gmail.com", "email_address_type": "WORK"}], "addresses": [{"street_1": "5th Avenue", "street_2": "Street 2", "city": "New York", "state": "NY", "postal_code": "10001", "country": "USA", "address_type": "WORK", "owner_type": ""}], "phone_numbers": [{"phone_number": "+33660606067", "phone_type": "WORK"}], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}} createCrmContact: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - addresses: - - address_type: PERSONAL - city: Anytown - country: USA - owner_type: - postal_code: "10001" - state: CA - street_1: 5th Avenue - street_2: Street 2 - email_addresses: - - email_address: Jena.Nienow28@yahoo.com - email_address_type: - field_mappings: - fav_color: red - fav_dish: broccoli - first_name: John - last_name: Doe - phone_numbers: - - phone_number: 1-809-839-8041 - phone_type: - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"first_name": "John", "last_name": "Doe", "email_addresses": [{"email_address": "Jena.Nienow28@yahoo.com", "email_address_type": ""}], "phone_numbers": [{"phone_number": "1-809-839-8041", "phone_type": ""}], "addresses": [{"street_1": "5th Avenue", "street_2": "Street 2", "city": "Anytown", "state": "CA", "postal_code": "10001", "country": "USA", "address_type": "PERSONAL", "owner_type": ""}], "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - addresses: - - address_type: PERSONAL - city: Anytown - country: USA - owner_type: - postal_code: "10001" - state: CA - street_1: 5th Avenue - street_2: Street 2 - created_at: "2024-10-01T12:00:00Z" - email_addresses: - - email_address: Astrid_Rau81@gmail.com - email_address_type: - field_mappings: - fav_color: red - fav_dish: broccoli - first_name: John - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - last_name: Doe - modified_at: "2024-10-01T12:00:00Z" - phone_numbers: - - phone_number: 687-596-3029 x0522 - phone_type: - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"first_name": "John", "last_name": "Doe", "email_addresses": [{"email_address": "Astrid_Rau81@gmail.com", "email_address_type": ""}], "phone_numbers": [{"phone_number": "687-596-3029 x0522", "phone_type": ""}], "addresses": [{"street_1": "5th Avenue", "street_2": "Street 2", "city": "Anytown", "state": "CA", "postal_code": "10001", "country": "USA", "address_type": "PERSONAL", "owner_type": ""}], "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createCrmDeal: speakeasy-default-create-crm-deal: parameters: - header: - x-connection-token: query: {} + header: + x-connection-token: "" requestBody: - application/json: - amount: 1000 - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - description: Contract with Sales Operations Team - field_mappings: - fav_color: red - fav_dish: broccoli - name: Huge Contract with Acme - stage_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"name": "Huge Contract with Acme", "description": "Contract with Sales Operations Team", "amount": 1000, "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: - "201": - application/json: - amount: 1000 - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - description: Contract with Sales Operations Team - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: Huge Contract with Acme - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - stage_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + "201": + application/json: {"name": "Huge Contract with Acme", "description": "Contract with Sales Operations Team", "amount": 1000, "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createCrmEngagement: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contacts: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: Meeting call with CTO - direction: INBOUND - end_time: "2024-10-01T22:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - start_at: "2024-10-01T12:00:00Z" - subject: Technical features planning - type: MEETING - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"content": "Meeting call with CTO", "direction": "INBOUND", "subject": "Technical features planning", "start_at": "2024-10-01T12:00:00Z", "end_time": "2024-10-01T22:00:00Z", "type": "MEETING", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contacts": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contacts: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: Meeting call with CTO - created_at: "2024-10-01T12:00:00Z" - direction: INBOUND - end_time: "2024-10-01T22:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - start_at: "2024-10-01T12:00:00Z" - subject: Technical features planning - type: MEETING - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"content": "Meeting call with CTO", "direction": "INBOUND", "subject": "Technical features planning", "start_at": "2024-10-01T12:00:00Z", "end_time": "2024-10-01T22:00:00Z", "type": "MEETING", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contacts": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createCrmNote: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: My notes taken during the meeting - deal_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - field_mappings: - fav_color: red - fav_dish: broccoli - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"content": "My notes taken during the meeting", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: My notes taken during the meeting - created_at: "2024-10-01T12:00:00Z" - deal_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"content": "My notes taken during the meeting", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createCrmTask: speakeasy-default-create-crm-task: parameters: - header: - x-connection-token: query: {} + header: + x-connection-token: "" requestBody: - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: Prepare email campaign - deal_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - due_date: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - finished_date: "2024-10-01T12:00:00Z" - status: PENDING - subject: Answer customers - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"subject": "Answer customers", "content": "Prepare email campaign", "status": "PENDING", "due_date": "2024-10-01T12:00:00Z", "finished_date": "2024-10-01T12:00:00Z", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: Prepare email campaign - created_at: "2024-10-01T12:00:00Z" - deal_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - due_date: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - finished_date: "2024-10-01T12:00:00Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - key1: value1 - key2: 42 - key3: true - remote_id: id_1 - status: PENDING - subject: Answer customers - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"subject": "Answer customers", "content": "Prepare email campaign", "status": "PENDING", "due_date": "2024-10-01T12:00:00Z", "finished_date": "2024-10-01T12:00:00Z", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"key1": "value1", "key2": 42, "key3": true}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createEcommerceOrder: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - currency: AUD - customer_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - fulfillment_status: PENDING - items: - - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - modified_at: "2024-06-15T12:00:00Z" - name: Net Income - parent_item: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_generated_at: "2024-07-01T12:00:00Z" - remote_id: "12345" - type: Operating Activities - value: 100000 - order_number: "19823838833" - order_status: UNSHIPPED - payment_status: SUCCESS - total_discount: 10 - total_price: 300 - total_shipping: 120 - total_tax: 120 + application/json: {"order_status": "UNSHIPPED", "order_number": "19823838833", "payment_status": "SUCCESS", "currency": "AUD", "total_price": 300, "total_discount": 10, "total_shipping": 120, "total_tax": 120, "fulfillment_status": "PENDING", "customer_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "items": [{"name": "Net Income", "value": 100000, "type": "Operating Activities", "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "12345", "remote_generated_at": "2024-07-01T12:00:00Z", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"}]} responses: "201": - application/json: - created_at: "2024-10-01T12:00:00Z" - currency: AUD - customer_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - fulfillment_status: PENDING - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - items: - - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - modified_at: "2024-06-15T12:00:00Z" - name: Net Income - parent_item: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_generated_at: "2024-07-01T12:00:00Z" - remote_id: "12345" - type: Operating Activities - value: 100000 - modified_at: "2024-10-01T12:00:00Z" - order_number: "19823838833" - order_status: UNSHIPPED - payment_status: SUCCESS - remote_id: id_1 - total_discount: 10 - total_price: 300 - total_shipping: 120 - total_tax: 120 + application/json: {"order_status": "UNSHIPPED", "order_number": "19823838833", "payment_status": "SUCCESS", "currency": "AUD", "total_price": 300, "total_discount": 10, "total_shipping": 120, "total_tax": 120, "fulfillment_status": "PENDING", "customer_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "items": [{"name": "Net Income", "value": 100000, "type": "Operating Activities", "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "12345", "remote_generated_at": "2024-07-01T12:00:00Z", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"}], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createEcommerceProduct: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - description: best tee ever - images_urls: - - https://myproduct/image - product_status: ACTIVE - product_type: teeshirt - product_url: https://product_url/tee - tags: - - tag_1 - vendor: vendor_extern + application/json: {"product_url": "https://product_url/tee", "product_type": "teeshirt", "product_status": "ACTIVE", "images_urls": ["https://myproduct/image"], "description": "best tee ever", "vendor": "vendor_extern", "tags": ["tag_1"]} responses: "201": - application/json: - created_at: "2024-10-01T12:00:00Z" - description: best tee ever - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - images_urls: - - https://myproduct/image - modified_at: "2024-10-01T12:00:00Z" - product_status: ACTIVE - product_type: teeshirt - product_url: https://product_url/tee - remote_id: id_1 - tags: - - tag_1 - vendor: vendor_extern + application/json: {"product_url": "https://product_url/tee", "product_type": "teeshirt", "product_status": "ACTIVE", "images_urls": ["https://myproduct/image"], "description": "best tee ever", "vendor": "vendor_extern", "tags": ["tag_1"], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createFilestorageFile: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - field_mappings: - fav_color: red - fav_dish: broccoli - file_url: https://example.com/my_paris_photo.png - folder_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - mime_type: application/pdf - name: my_paris_photo.png - permission: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - shared_link: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - size: "1024" + application/json: {"name": "my_paris_photo.png", "file_url": "https://example.com/my_paris_photo.png", "mime_type": "application/pdf", "size": "1024", "folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - created_at: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - file_url: https://example.com/my_paris_photo.png - folder_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - mime_type: application/pdf - modified_at: "2024-10-01T12:00:00Z" - name: my_paris_photo.png - permission: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - shared_link: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - size: "1024" + application/json: {"name": "my_paris_photo.png", "file_url": "https://example.com/my_paris_photo.png", "mime_type": "application/pdf", "size": "1024", "folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createFilestorageFolder: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - description: All things school related - drive_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - field_mappings: - fav_color: red - fav_dish: broccoli - folder_url: https://example.com/school - name: school - parent_folder_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - permission: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - shared_link: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - size: "2048" + application/json: {"name": "school", "size": "2048", "folder_url": "https://example.com/school", "description": "All things school related", "drive_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "parent_folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - created_at: "2024-10-01T12:00:00Z" - description: All things school related - drive_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - field_mappings: - fav_color: red - fav_dish: broccoli - folder_url: https://example.com/school - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: school - parent_folder_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - permission: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - shared_link: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - size: "2048" + application/json: {"name": "school", "size": "2048", "folder_url": "https://example.com/school", "description": "All things school related", "drive_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "parent_folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createHrisEmployee: speakeasy-default-create-hris-employee: parameters: + query: {} header: x-connection-token: - query: {} requestBody: application/json: avatar_url: https://example.com/avatar.jpg @@ -2430,9 +1470,9 @@ examples: createHrisTimeoff: speakeasy-default-create-hris-timeoff: parameters: + query: {} header: x-connection-token: - query: {} requestBody: application/json: amount: 5 @@ -2465,9 +1505,9 @@ examples: createHrisTimesheetentry: speakeasy-default-create-hris-timesheetentry: parameters: + query: {} header: x-connection-token: - query: {} requestBody: application/json: employee_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f @@ -2491,319 +1531,120 @@ examples: createLinkedUser: speakeasy-default-create-linked-user: requestBody: - application/json: - alias: acme - linked_user_origin_id: id_1 + application/json: {"linked_user_origin_id": "id_1", "alias": "acme"} responses: "201": - application/json: - alias: acme - id_linked_user: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - linked_user_origin_id: id_1 + application/json: {"id_linked_user": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "linked_user_origin_id": "id_1", "alias": "acme", "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} createMarketingAutomationContact: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" createMarketingautomationAction: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" createMarketingautomationAutomation: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" createMarketingautomationCampaign: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" createMarketingautomationList: speakeasy-default-create-marketingautomation-list: parameters: - header: - x-connection-token: query: {} + header: + x-connection-token: "" createMarketingautomationTemplate: speakeasy-default-create-marketingautomation-template: parameters: - header: - x-connection-token: query: {} + header: + x-connection-token: "" createProject: speakeasy-default-create-project: requestBody: - application/json: - id_organization: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_user: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - name: Project Name + application/json: {"name": "Project Name", "id_organization": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id_user": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} responses: "201": - application/json: - id_connector_set: 123e4567-e89b-12d3-a456-426614174002 - id_project: 123e4567-e89b-12d3-a456-426614174000 - id_user: 123e4567-e89b-12d3-a456-426614174001 - name: My Project - pull_frequency: 3600 - redirect_url: https://example.com/redirect - sync_mode: automatic + application/json: {"id_project": "123e4567-e89b-12d3-a456-426614174000", "name": "My Project", "sync_mode": "automatic", "pull_frequency": 3600, "redirect_url": "https://example.com/redirect", "id_user": "123e4567-e89b-12d3-a456-426614174001", "id_connector_set": "123e4567-e89b-12d3-a456-426614174002"} createTicketingAttachment: speakeasy-default-create-ticketing-attachment: parameters: - header: - x-connection-token: query: {} + header: + x-connection-token: "" requestBody: - application/json: - comment_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - field_mappings: - fav_color: red - fav_dish: broccoli - file_name: features_planning.pdf - file_url: https://example.com/features_planning.pdf - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - uploader: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"file_name": "features_planning.pdf", "file_url": "https://example.com/features_planning.pdf", "uploader": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "comment_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - comment_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - file_name: features_planning.pdf - file_url: https://example.com/features_planning.pdf - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - uploader: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"file_name": "features_planning.pdf", "file_url": "https://example.com/features_planning.pdf", "uploader": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "comment_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createTicketingComment: speakeasy-default-create-ticketing-comment: parameters: - header: - x-connection-token: query: {} + header: + x-connection-token: "" requestBody: - application/json: - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - body: Assigned to Eric ! - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - creator_type: USER - html_body:

Assigned to Eric !

- is_private: false - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"body": "Assigned to Eric !", "html_body": "

Assigned to Eric !

", "is_private": false, "creator_type": "USER", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"]} responses: "201": - application/json: - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - body: Assigned to Eric ! - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - creator_type: USER - html_body:

Assigned to Eric !

- id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - is_private: false - modified_at: "2024-10-01T12:00:00Z" - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"body": "Assigned to Eric !", "html_body": "

Assigned to Eric !

", "is_private": false, "creator_type": "USER", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createTicketingTicket: "": parameters: - header: - x-connection-token: query: remote_data: false + header: + x-connection-token: "" requestBody: - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - assigned_to: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - collections: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - comment: - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - body: Assigned to Eric ! - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - creator_type: USER - html_body:

Assigned to Eric !

- is_private: false - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - completed_at: "2024-10-01T12:00:00Z" - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - description: Help customer - due_date: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - name: Customer Service Inquiry - parent_ticket: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - priority: HIGH - status: OPEN - tags: - - my_tag - - urgent_tag - type: BUG + application/json: {"name": "Customer Service Inquiry", "status": "OPEN", "description": "Help customer", "due_date": "2024-10-01T12:00:00Z", "type": "BUG", "parent_ticket": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "collections": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "tags": ["my_tag", "urgent_tag"], "completed_at": "2024-10-01T12:00:00Z", "priority": "HIGH", "assigned_to": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "comment": {"body": "Assigned to Eric !", "html_body": "

Assigned to Eric !

", "is_private": false, "creator_type": "USER", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"]}, "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}} responses: "201": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - assigned_to: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - collections: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - comment: - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - body: Assigned to Eric ! - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - creator_type: USER - html_body:

Assigned to Eric !

- is_private: false - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - completed_at: "2024-10-01T12:00:00Z" - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - description: Help customer - due_date: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: Customer Service Inquiry - parent_ticket: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - priority: HIGH - remote_data: - key1: value1 - key2: 42 - key3: true - remote_id: id_1 - status: OPEN - tags: - - my_tag - - urgent_tag - type: BUG + application/json: {"name": "Customer Service Inquiry", "status": "OPEN", "description": "Help customer", "due_date": "2024-10-01T12:00:00Z", "type": "BUG", "parent_ticket": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "collections": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "tags": ["my_tag", "urgent_tag"], "completed_at": "2024-10-01T12:00:00Z", "priority": "HIGH", "assigned_to": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "comment": {"body": "Assigned to Eric !", "html_body": "

Assigned to Eric !

", "is_private": false, "creator_type": "USER", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"]}, "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"key1": "value1", "key2": 42, "key3": true}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} createWebhookPublic: speakeasy-default-create-webhook-public: requestBody: - application/json: - description: Webhook to receive connection events - scope: - - connection.created - url: https://acme.com/webhook_receiver + application/json: {"url": "https://acme.com/webhook_receiver", "description": "Webhook to receive connection events", "scope": ["connection.created"]} responses: "201": - application/json: - active: true - created_at: "2024-10-01T12:00:00Z" - endpoint_description: Webhook to receive connection events - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_webhook_endpoint: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - last_update: "2024-10-01T12:00:00Z" - scope: - - connection.created - secret: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - url: https://acme.com/webhook_receiver + application/json: {"id_webhook_endpoint": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "endpoint_description": "Webhook to receive connection events", "url": "https://acme.com/webhook_receiver", "secret": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "active": true, "created_at": "2024-10-01T12:00:00Z", "scope": ["connection.created"], "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "last_update": "2024-10-01T12:00:00Z"} defineCustomField: speakeasy-default-define-custom-field: requestBody: - application/json: - data_type: string - description: Favorite Dish - linked_user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - name: my_favorite_dish - object_type_owner: company - source_custom_field_id: id_1 - source_provider: hubspot + application/json: {"object_type_owner": "company", "name": "my_favorite_dish", "description": "Favorite Dish", "data_type": "string", "source_custom_field_id": "id_1", "source_provider": "hubspot", "linked_user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} responses: "201": - application/json: - created_at: "2024-10-01T12:00:00Z" - data_type: string - description: My favorite dish - id_attribute: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_consumer: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_entity: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_id: id_1 - ressource_owner_type: "" - scope: "" - slug: fav_dish - source: hubspot - status: "" + application/json: {"id_attribute": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "status": "", "ressource_owner_type": "", "slug": "fav_dish", "description": "My favorite dish", "data_type": "string", "remote_id": "id_1", "source": "hubspot", "id_entity": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "scope": "", "id_consumer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} definitions: speakeasy-default-definitions: requestBody: - application/json: - data_type: string - description: My favorite dish - name: fav_dish - object_type_owner: company + application/json: {"object_type_owner": "company", "name": "fav_dish", "description": "My favorite dish", "data_type": "string"} responses: "201": - application/json: - created_at: "2024-10-01T12:00:00Z" - data_type: string - description: My favorite dish - id_attribute: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_consumer: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_entity: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_id: id_1 - ressource_owner_type: "" - scope: "" - slug: fav_dish - source: hubspot - status: "" + application/json: {"id_attribute": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "status": "", "ressource_owner_type": "", "slug": "fav_dish", "description": "My favorite dish", "data_type": "string", "remote_id": "id_1", "source": "hubspot", "id_entity": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "scope": "", "id_consumer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} delete: "": parameters: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" responses: "201": - application/json: - active: true - created_at: "2024-10-01T12:00:00Z" - endpoint_description: Webhook to receive connection events - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_webhook_endpoint: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - last_update: "2024-10-01T12:00:00Z" - scope: - - connection.created - secret: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - url: https://acme.com/webhook_receiver + application/json: {"id_webhook_endpoint": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "endpoint_description": "Webhook to receive connection events", "url": "https://acme.com/webhook_receiver", "secret": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "active": true, "created_at": "2024-10-01T12:00:00Z", "scope": ["connection.created"], "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "last_update": "2024-10-01T12:00:00Z"} getConnections: speakeasy-default-get-connections: responses: @@ -2829,19 +1670,12 @@ examples: speakeasy-default-get-pull-frequency: responses: "200": - application/json: - accounting: 14400 - ats: 3600 - crm: 1800 - ecommerce: 43200 - filestorage: 28800 - hris: 7200 - ticketing: 86400 + application/json: {"crm": 1800, "accounting": 14400, "filestorage": 28800, "ecommerce": 43200, "ticketing": 86400} getRetriedRequestResponse: speakeasy-default-get-retried-request-response: parameters: path: - retryId: + retryId: "" health: speakeasy-default-health: responses: @@ -2851,326 +1685,263 @@ examples: speakeasy-default-hello: responses: "200": - text/plain: + text/plain: "" importBatch: speakeasy-default-import-batch: requestBody: - application/json: - alias: acme - linked_user_origin_ids: - - id_1 + application/json: {"linked_user_origin_ids": ["id_1"], "alias": "acme"} responses: "201": application/json: [] listAccountingAccounts: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingAddress: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true - responses: - "200": - application/json: - data: [] - next_cursor: - prev_cursor: + header: + x-connection-token: "" + responses: + "200": + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingAttachments: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingBalanceSheets: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingCashflowStatement: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingCompanyInfos: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingContacts: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingCreditNote: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingExpense: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingIncomeStatement: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingInvoice: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingItem: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingJournalEntry: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingPayment: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingPhonenumber: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingPurchaseOrder: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingTaxRate: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingTrackingCategorys: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingTransaction: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAccountingVendorCredit: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listAtsActivity: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3180,12 +1951,12 @@ examples: listAtsApplication: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3195,12 +1966,12 @@ examples: listAtsAttachment: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3210,12 +1981,12 @@ examples: listAtsCandidate: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3225,12 +1996,12 @@ examples: listAtsDepartments: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3240,12 +2011,12 @@ examples: listAtsEeocs: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3255,12 +2026,12 @@ examples: listAtsInterview: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3270,12 +2041,12 @@ examples: listAtsJob: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3285,12 +2056,12 @@ examples: listAtsJobInterviewStage: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3300,12 +2071,12 @@ examples: listAtsOffer: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3315,12 +2086,12 @@ examples: listAtsOffice: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3330,12 +2101,12 @@ examples: listAtsRejectReasons: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3345,12 +2116,12 @@ examples: listAtsScorecard: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3360,12 +2131,12 @@ examples: listAtsTags: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3375,12 +2146,12 @@ examples: listAtsUsers: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3395,252 +2166,204 @@ examples: listCrmCompany: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listCrmContacts: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listCrmDeals: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listCrmEngagements: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listCrmNote: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listCrmStages: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: - "200": - application/json: - data: [] - next_cursor: - prev_cursor: + "200": + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listCrmTask: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listCrmUsers: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listEcommerceCustomers: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listEcommerceFulfillments: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listEcommerceOrders: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listEcommerceProducts: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listFilestorageFile: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listFilestorageFolder: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listFilestorageGroup: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listFilestorageUsers: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listHrisBankInfo: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3650,12 +2373,12 @@ examples: listHrisBenefits: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3665,12 +2388,12 @@ examples: listHrisCompanies: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3680,12 +2403,12 @@ examples: listHrisDependents: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3695,12 +2418,12 @@ examples: listHrisEmployeePayrollRun: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3710,12 +2433,12 @@ examples: listHrisEmployees: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3725,12 +2448,12 @@ examples: listHrisEmployerBenefits: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3740,12 +2463,12 @@ examples: listHrisEmployments: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3755,12 +2478,12 @@ examples: listHrisGroups: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3770,12 +2493,12 @@ examples: listHrisLocations: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3785,12 +2508,12 @@ examples: listHrisPaygroups: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3800,12 +2523,12 @@ examples: listHrisPayrollRuns: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3815,12 +2538,12 @@ examples: listHrisTimeoffbalances: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3830,12 +2553,12 @@ examples: listHrisTimeoffs: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3845,12 +2568,12 @@ examples: listHrisTimesheetentries: "": parameters: - header: - x-connection-token: query: cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 limit: 10 remote_data: true + header: + x-connection-token: responses: "200": application/json: @@ -3865,288 +2588,231 @@ examples: listMarketingAutomationContacts: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingAutomationEvents: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingAutomationUsers: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingautomationAction: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingautomationAutomations: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingautomationCampaigns: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingautomationEmails: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingautomationLists: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingautomationMessages: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listMarketingautomationTemplates: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingAccount: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingAttachments: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingCollections: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingComments: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingContacts: "": - parameters: - header: - x-connection-token: + parameters: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingTags: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingTeams: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingTicket: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listTicketingUsers: "": parameters: - header: - x-connection-token: query: - cursor: 1b8b05bb-5273-4012-b520-8657b0b90874 + cursor: "1b8b05bb-5273-4012-b520-8657b0b90874" limit: 10 remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} listWebhooks: speakeasy-default-list-webhooks: responses: @@ -4155,626 +2821,289 @@ examples: map: speakeasy-default-map: requestBody: - application/json: - attributeId: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - linked_user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - source_custom_field_id: id_1 - source_provider: hubspot + application/json: {"attributeId": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "source_custom_field_id": "id_1", "source_provider": "hubspot", "linked_user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} responses: "201": - application/json: - created_at: "2024-10-01T12:00:00Z" - data_type: string - description: My favorite dish - id_attribute: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_consumer: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_entity: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_id: id_1 - ressource_owner_type: "" - scope: "" - slug: fav_dish - source: hubspot - status: "" + application/json: {"id_attribute": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "status": "", "ressource_owner_type": "", "slug": "fav_dish", "description": "My favorite dish", "data_type": "string", "remote_id": "id_1", "source": "hubspot", "id_entity": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "scope": "", "id_consumer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} query: speakeasy-default-query: parameters: header: - x-connection-token: + x-connection-token: "" requestBody: - application/json: - query: When does Panora incorporated? - topK: "3" + application/json: {"query": "When does Panora incorporated?", "topK": "3"} + responses: + "201": + application/json: [{"chunk": "Date : 06/07/2023", "metadata": {"blobType": "", "text": "ATTESTATION"}, "score": 0.87, "embedding": [-0.00442447886, -0.00116857514, 0.00869117491, -0.0361584462, -0.00220073434, 0.00946036354, -0.0101112155]}, {"chunk": "Date : 06/07/2023", "metadata": {"blobType": "", "text": "ATTESTATION"}, "score": 0.87, "embedding": [-0.00442447886, -0.00116857514, 0.00869117491, -0.0361584462, -0.00220073434, 0.00946036354, -0.0101112155]}, {"chunk": "Date : 06/07/2023", "metadata": {"blobType": "", "text": "ATTESTATION"}, "score": 0.87, "embedding": [-0.00442447886, -0.00116857514, 0.00869117491, -0.0361584462, -0.00220073434, 0.00946036354, -0.0101112155]}] remoteId: "": parameters: query: - remoteId: id_1 + remoteId: "id_1" responses: "200": - application/json: - alias: acme - id_linked_user: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - linked_user_origin_id: id_1 + application/json: {"id_linked_user": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "linked_user_origin_id": "id_1", "alias": "acme", "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} request: speakeasy-default-request: parameters: header: - x-connection-token: + x-connection-token: "" requestBody: - application/json: - method: GET - path: /dev + application/json: {"method": "GET", "path": "/dev", "request_format": {}, "overrideBaseUrl": {"key": "https://equatorial-government.com/"}} resync: speakeasy-default-resync: responses: "201": - application/json: - provider: gitlab - status: success - timestamp: "" - vertical: ticketing + application/json: {"timestamp": "", "vertical": "ticketing", "provider": "gitlab", "status": "success"} retrieveAccountingAccount: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - account_number: "1000" - classification: Asset - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - current_balance: 10000 - description: Main cash account for daily operations - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - name: Cash - parent_account: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_id: account_1234 - status: Active - type: Current Asset + application/json: {"name": "Cash", "description": "Main cash account for daily operations", "classification": "Asset", "type": "Current Asset", "status": "Active", "current_balance": 10000, "currency": "USD", "account_number": "1000", "parent_account": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "account_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingAddress: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - city: New York - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - country: USA - country_subdivision: New York - created_at: "2024-06-15T12:00:00Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - remote_id: address_1234 - state: NY - street_1: 123 Main St - street_2: Apt 4B - type: Billing - zip: "10001" + application/json: {"type": "Billing", "street_1": "123 Main St", "street_2": "Apt 4B", "city": "New York", "state": "NY", "country_subdivision": "New York", "country": "USA", "zip": "10001", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "address_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingAttachment: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - file_name: invoice.pdf - file_url: https://example.com/files/invoice.pdf - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - remote_id: attachment_1234 + application/json: {"file_name": "invoice.pdf", "file_url": "https://example.com/files/invoice.pdf", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "attachment_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingBalanceSheet: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - assets: - - Cash - - Accounts Receivable - - Inventory - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - date: "2024-06-30T23:59:59Z" - equity: - - Common Stock - - Retained Earnings - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - liabilities: - - Accounts Payable - - Long-term Debt - line_items: [] - modified_at: "2024-06-15T12:00:00Z" - name: Q2 2024 Balance Sheet - net_assets: 1000000 - remote_generated_at: "2024-07-01T12:00:00Z" - remote_id: balancesheet_1234 + application/json: {"name": "Q2 2024 Balance Sheet", "currency": "USD", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "date": "2024-06-30T23:59:59Z", "net_assets": 1000000, "assets": ["Cash", "Accounts Receivable", "Inventory"], "liabilities": ["Accounts Payable", "Long-term Debt"], "equity": ["Common Stock", "Retained Earnings"], "remote_generated_at": "2024-07-01T12:00:00Z", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "balancesheet_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingCashflowStatement: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - cash_at_beginning_of_period: 1000000 - cash_at_end_of_period: 1200000 - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - end_period: "2024-06-30T23:59:59Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - modified_at: "2024-06-15T12:00:00Z" - name: Q2 2024 Cash Flow Statement - remote_generated_at: "2024-07-01T12:00:00Z" - remote_id: cashflowstatement_1234 - start_period: "2024-04-01T00:00:00Z" + application/json: {"name": "Q2 2024 Cash Flow Statement", "currency": "USD", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "start_period": "2024-04-01T00:00:00Z", "end_period": "2024-06-30T23:59:59Z", "cash_at_beginning_of_period": 1000000, "cash_at_end_of_period": 1200000, "remote_generated_at": "2024-07-01T12:00:00Z", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "cashflowstatement_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingCompanyInfo: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-06-15T12:00:00Z" - currency: USD - fiscal_year_end_day: 31 - fiscal_year_end_month: 12 - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - legal_name: Acme Corporation LLC - modified_at: "2024-06-15T12:00:00Z" - name: Acme Corporation - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: company_1234 - tax_number: "123456789" - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - urls: - - https://www.acmecorp.com - - https://store.acmecorp.com + application/json: {"name": "Acme Corporation", "legal_name": "Acme Corporation LLC", "tax_number": "123456789", "fiscal_year_end_month": 12, "fiscal_year_end_day": 31, "currency": "USD", "urls": ["https://www.acmecorp.com", "https://store.acmecorp.com"], "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f", "801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "company_1234", "remote_created_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingContact: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - email_address: john.doe@example.com - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - is_customer: false - is_supplier: true - modified_at: "2024-06-15T12:00:00Z" - name: John Doe - remote_id: contact_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - status: Active - tax_number: "123456789" + application/json: {"name": "John Doe", "is_supplier": true, "is_customer": false, "email_address": "john.doe@example.com", "tax_number": "123456789", "status": "Active", "currency": "USD", "remote_updated_at": "2024-06-15T12:00:00Z", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "contact_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingCreditNote: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - applied_payments: - - APPLIED-001 - - APPLIED-002 - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - number: CN-001 - payments: - - PAYMENT-001 - - PAYMENT-002 - remaining_credit: 5000 - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: creditnote_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - status: Issued - total_amount: 10000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" + application/json: {"transaction_date": "2024-06-15T12:00:00Z", "status": "Issued", "number": "CN-001", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "exchange_rate": "1.2", "total_amount": 10000, "remaining_credit": 5000, "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "currency": "USD", "payments": ["PAYMENT-001", "PAYMENT-002"], "applied_payments": ["APPLIED-001", "APPLIED-002"], "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "creditnote_1234", "remote_created_at": "2024-06-15T12:00:00Z", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingExpense: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - memo: Business lunch with client - modified_at: "2024-06-15T12:00:00Z" - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: expense_1234 - sub_total: 9000 - total_amount: 10000 - total_tax_amount: 1000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" + application/json: {"transaction_date": "2024-06-15T12:00:00Z", "total_amount": 10000, "sub_total": 9000, "total_tax_amount": 1000, "currency": "USD", "exchange_rate": "1.2", "memo": "Business lunch with client", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "expense_1234", "remote_created_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingIncomeStatement: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-06-15T12:00:00Z" - currency: USD - end_period: "2024-06-30T23:59:59Z" - gross_profit: 1000000 - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - name: Q2 2024 Income Statement - net_income: 750000 - net_operating_income: 800000 - remote_id: incomestatement_1234 - start_period: "2024-04-01T00:00:00Z" + application/json: {"name": "Q2 2024 Income Statement", "currency": "USD", "start_period": "2024-04-01T00:00:00Z", "end_period": "2024-06-30T23:59:59Z", "gross_profit": 1000000, "net_operating_income": 800000, "net_income": 750000, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "incomestatement_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingInvoice: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - balance: 0 - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - due_date: "2024-07-15T12:00:00Z" - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - issue_date: "2024-06-15T12:00:00Z" - line_items: [] - memo: Payment for services rendered - modified_at: "2024-06-15T12:00:00Z" - number: INV-001 - paid_on_date: "2024-07-10T12:00:00Z" - remote_id: invoice_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - status: Paid - sub_total: 10000 - total_amount: 11000 - total_discount: 1000 - total_tax_amount: 1000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - type: Sales + application/json: {"type": "Sales", "number": "INV-001", "issue_date": "2024-06-15T12:00:00Z", "due_date": "2024-07-15T12:00:00Z", "paid_on_date": "2024-07-10T12:00:00Z", "memo": "Payment for services rendered", "currency": "USD", "exchange_rate": "1.2", "total_discount": 1000, "sub_total": 10000, "status": "Paid", "total_tax_amount": 1000, "total_amount": 11000, "balance": 0, "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f", "801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "invoice_1234", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingItem: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - name: Product A - purchase_account: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - purchase_price: 800 - remote_id: item_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - sales_account: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - status: Active - unit_price: 1000 + application/json: {"name": "Product A", "status": "Active", "unit_price": 1000, "purchase_price": 800, "sales_account": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "purchase_account": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "item_1234", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingJournalEntry: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - applied_payments: - - appliedPayment1 - - appliedPayment2 - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_acc_accounting_period: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_acc_company_info: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - journal_number: JE-001 - line_items: [] - memo: Monthly expense journal entry - modified_at: "2024-06-15T12:00:00Z" - payments: - - payment1 - - payment2 - posting_status: Posted - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: journal_entry_1234 - remote_modiified_at: "2024-06-15T12:00:00Z" - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" + application/json: {"transaction_date": "2024-06-15T12:00:00Z", "payments": ["payment1", "payment2"], "applied_payments": ["appliedPayment1", "appliedPayment2"], "memo": "Monthly expense journal entry", "currency": "USD", "exchange_rate": "1.2", "id_acc_company_info": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "journal_number": "JE-001", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "id_acc_accounting_period": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "posting_status": "Posted", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "journal_entry_1234", "remote_created_at": "2024-06-15T12:00:00Z", "remote_modiified_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingPayment: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - invoice_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - modified_at: "2024-06-15T12:00:00Z" - remote_id: payment_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - total_amount: 10000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" - type: Credit Card + application/json: {"invoice_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "transaction_date": "2024-06-15T12:00:00Z", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "currency": "USD", "exchange_rate": "1.2", "total_amount": 10000, "type": "Credit Card", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "payment_1234", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingPhonenumber: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - number: "+1234567890" - remote_id: phone_1234 - type: Mobile + application/json: {"number": "+1234567890", "type": "Mobile", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "phone_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingPurchaseOrder: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - customer: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - delivery_address: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - delivery_date: "2024-07-15T12:00:00Z" - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - issue_date: "2024-06-15T12:00:00Z" - line_items: [] - memo: Purchase order for Q3 inventory - modified_at: "2024-06-15T12:00:00Z" - purchase_order_number: PO-001 - remote_created_at: "2024-06-15T12:00:00Z" - remote_id: po_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - status: Pending - total_amount: 100000 - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - vendor: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"status": "Pending", "issue_date": "2024-06-15T12:00:00Z", "purchase_order_number": "PO-001", "delivery_date": "2024-07-15T12:00:00Z", "delivery_address": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "customer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "vendor": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "memo": "Purchase order for Q3 inventory", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "total_amount": 100000, "currency": "USD", "exchange_rate": "1.2", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "po_1234", "remote_created_at": "2024-06-15T12:00:00Z", "remote_updated_at": "2024-06-15T12:00:00Z", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingTaxRate: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - description: VAT 20% - effective_tax_rate: 1900 - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - remote_id: tax_rate_1234 - total_tax_ratge: 2000 + application/json: {"description": "VAT 20%", "total_tax_ratge": 2000, "effective_tax_rate": 1900, "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "tax_rate_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingTrackingCategory: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - category_type: Expense - created_at: "2024-06-15T12:00:00Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-06-15T12:00:00Z" - name: Department - parent_category: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_id: tracking_category_1234 - status: Active + application/json: {"name": "Department", "status": "Active", "category_type": "Expense", "parent_category": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "tracking_category_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"} retrieveAccountingTransaction: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - modified_at: "2024-06-15T12:00:00Z" - number: "1001" - remote_id: remote_id_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - total_amount: "1000" - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" - transaction_type: Sale + application/json: {"transaction_type": "Sale", "number": "1001", "transaction_date": "2024-06-15T12:00:00Z", "total_amount": "1000", "exchange_rate": "1.2", "currency": "USD", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "remote_id_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z", "remote_updated_at": "2024-06-15T12:00:00Z"} retrieveAccountingVendorCredit: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - accounting_period_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - currency: USD - exchange_rate: "1.2" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - line_items: [] - modified_at: "2024-06-15T12:00:00Z" - number: VC-001 - remote_id: remote_id_1234 - remote_updated_at: "2024-06-15T12:00:00Z" - total_amount: "1000" - tracking_categories: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - transaction_date: "2024-06-15T12:00:00Z" - vendor: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"number": "VC-001", "transaction_date": "2024-06-15T12:00:00Z", "vendor": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "total_amount": "1000", "currency": "USD", "exchange_rate": "1.2", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "tracking_categories": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "line_items": [], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "remote_id_1234", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z", "remote_updated_at": "2024-06-15T12:00:00Z"} retrieveAtsActivity: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -4797,12 +3126,12 @@ examples: retrieveAtsApplication: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -4830,12 +3159,12 @@ examples: retrieveAtsAttachment: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -4858,12 +3187,12 @@ examples: retrieveAtsCandidate: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -4905,13 +3234,13 @@ examples: url_type: WEBSITE retrieveAtsDepartment: "": - parameters: - header: - x-connection-token: + parameters: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -4930,11 +3259,11 @@ examples: retrieveAtsEeocs: speakeasy-default-retrieve-ats-eeocs: parameters: - header: - x-connection-token: path: id: query: {} + header: + x-connection-token: responses: "200": application/json: @@ -4957,12 +3286,12 @@ examples: retrieveAtsInterview: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -4990,12 +3319,12 @@ examples: retrieveAtsJob: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5029,12 +3358,12 @@ examples: retrieveAtsJobInterviewStage: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5054,12 +3383,12 @@ examples: retrieveAtsOffer: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5081,12 +3410,12 @@ examples: retrieveAtsOffice: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5105,12 +3434,12 @@ examples: retrieveAtsRejectReason: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5128,12 +3457,12 @@ examples: retrieveAtsScorecard: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5155,12 +3484,12 @@ examples: retrieveAtsTag: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5179,12 +3508,12 @@ examples: retrieveAtsUser: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5208,25 +3537,15 @@ examples: retrieveCollection: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - collection_type: PROJECT - created_at: "2024-10-01T12:00:00Z" - description: Collect issues - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: My Personal Collection - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 + application/json: {"name": "My Personal Collection", "description": "Collect issues", "collection_type": "PROJECT", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveConnections: speakeasy-default-retrieve-connections: responses: @@ -5235,473 +3554,200 @@ examples: retrieveCrmCompany: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - addresses: - - address_type: WORK - city: New York - country: USA - owner_type: - postal_code: "10001" - state: NY - street_1: 5th Avenue - street_2: Street 2 - email_addresses: - - email_address: acme@gmail.com - email_address_type: WORK - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - industry: ACCOUNTING - name: Acme - number_of_employees: 10 - phone_numbers: - - phone_number: "+33660606067" - phone_type: WORK - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"name": "Acme", "industry": "ACCOUNTING", "number_of_employees": 10, "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "email_addresses": [{"email_address": "acme@gmail.com", "email_address_type": "WORK"}], "addresses": [{"street_1": "5th Avenue", "street_2": "Street 2", "city": "New York", "state": "NY", "postal_code": "10001", "country": "USA", "address_type": "WORK", "owner_type": ""}], "phone_numbers": [{"phone_number": "+33660606067", "phone_type": "WORK"}], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}} retrieveCrmContact: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - addresses: - - address_type: PERSONAL - city: Anytown - country: USA - owner_type: - postal_code: "10001" - state: CA - street_1: 5th Avenue - street_2: Street 2 - created_at: "2024-10-01T12:00:00Z" - email_addresses: - - email_address: Tyrese.Waelchi40@yahoo.com - email_address_type: - field_mappings: - fav_color: red - fav_dish: broccoli - first_name: John - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - last_name: Doe - modified_at: "2024-10-01T12:00:00Z" - phone_numbers: - - phone_number: (600) 606-8108 x302 - phone_type: - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"first_name": "John", "last_name": "Doe", "email_addresses": [{"email_address": "Tyrese.Waelchi40@yahoo.com", "email_address_type": ""}], "phone_numbers": [{"phone_number": "(600) 606-8108 x302", "phone_type": ""}], "addresses": [{"street_1": "5th Avenue", "street_2": "Street 2", "city": "Anytown", "state": "CA", "postal_code": "10001", "country": "USA", "address_type": "PERSONAL", "owner_type": ""}], "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveCrmDeal: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - amount: 1000 - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - description: Contract with Sales Operations Team - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: Huge Contract with Acme - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - stage_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"name": "Huge Contract with Acme", "description": "Contract with Sales Operations Team", "amount": 1000, "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveCrmEngagement: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contacts: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: Meeting call with CTO - created_at: "2024-10-01T12:00:00Z" - direction: INBOUND - end_time: "2024-10-01T22:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - start_at: "2024-10-01T12:00:00Z" - subject: Technical features planning - type: MEETING - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"content": "Meeting call with CTO", "direction": "INBOUND", "subject": "Technical features planning", "start_at": "2024-10-01T12:00:00Z", "end_time": "2024-10-01T22:00:00Z", "type": "MEETING", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contacts": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveCrmNote: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: My notes taken during the meeting - created_at: "2024-10-01T12:00:00Z" - deal_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"content": "My notes taken during the meeting", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveCrmStage: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - stage_name: Qualified + application/json: {"stage_name": "Qualified", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}} retrieveCrmTask: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - company_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - content: Prepare email campaign - created_at: "2024-10-01T12:00:00Z" - deal_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - due_date: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - finished_date: "2024-10-01T12:00:00Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - key1: value1 - key2: 42 - key3: true - remote_id: id_1 - status: PENDING - subject: Answer customers - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"subject": "Answer customers", "content": "Prepare email campaign", "status": "PENDING", "due_date": "2024-10-01T12:00:00Z", "finished_date": "2024-10-01T12:00:00Z", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"key1": "value1", "key2": 42, "key3": true}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveCrmUser: "": parameters: - header: - x-connection-token: path: - id: b008e199-eda9-4629-bd41-a01b6195864a + id: "b008e199-eda9-4629-bd41-a01b6195864a" query: remote_data: true + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - email: jane.doe@example.com - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: Jane Doe - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 + application/json: {"name": "Jane Doe", "email": "jane.doe@example.com", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveEcommerceCustomer: speakeasy-default-retrieve-ecommerce-customer: parameters: - header: - x-connection-token: path: - id: + id: "" query: {} + header: + x-connection-token: "" responses: "200": - application/json: - addresses: - - address_type: PERSONAL - city: New York - country: United States of America - owner_type: - postal_code: "10001" - state: New York - street_1: 5th Avenue - street_2: Street 2 - created_at: "2024-10-01T12:00:00Z" - email: joedoe@gmail.com - first_name: Joe - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - last_name: Doe - modified_at: "2024-10-01T12:00:00Z" - phone_number: "+336666666" - remote_id: id_1 + application/json: {"email": "joedoe@gmail.com", "first_name": "Joe", "last_name": "Doe", "phone_number": "+336666666", "addresses": [{"street_1": "5th Avenue", "street_2": "Street 2", "city": "New York", "state": "New York", "postal_code": "10001", "country": "United States of America", "address_type": "PERSONAL", "owner_type": ""}], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveEcommerceFulfillment: speakeasy-default-retrieve-ecommerce-fulfillment: parameters: - header: - x-connection-token: path: - id: + id: "" query: {} + header: + x-connection-token: "" responses: "200": - application/json: - carrier: DHL - created_at: "2024-10-01T12:00:00Z" - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - items: {} - modified_at: "2024-10-01T12:00:00Z" - order_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_id: id_1 - tracking_numbers: - - track_1029_191919 - tracking_urls: - - https://tracing-url.sf.com + application/json: {"carrier": "DHL", "tracking_urls": ["https://tracing-url.sf.com"], "tracking_numbers": ["track_1029_191919"], "items": {}, "order_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveEcommerceOrder: speakeasy-default-retrieve-ecommerce-order: parameters: - header: - x-connection-token: path: - id: + id: "" query: {} + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - currency: AUD - customer_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - fulfillment_status: PENDING - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - items: - - company_info_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-06-15T12:00:00Z" - modified_at: "2024-06-15T12:00:00Z" - name: Net Income - parent_item: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_generated_at: "2024-07-01T12:00:00Z" - remote_id: "12345" - type: Operating Activities - value: 100000 - modified_at: "2024-10-01T12:00:00Z" - order_number: "19823838833" - order_status: UNSHIPPED - payment_status: SUCCESS - remote_id: id_1 - total_discount: 10 - total_price: 300 - total_shipping: 120 - total_tax: 120 + application/json: {"order_status": "UNSHIPPED", "order_number": "19823838833", "payment_status": "SUCCESS", "currency": "AUD", "total_price": 300, "total_discount": 10, "total_shipping": 120, "total_tax": 120, "fulfillment_status": "PENDING", "customer_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "items": [{"name": "Net Income", "value": 100000, "type": "Operating Activities", "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "report_item_1234", "remote_generated_at": "2024-07-01T12:00:00Z", "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "created_at": "2024-06-15T12:00:00Z", "modified_at": "2024-06-15T12:00:00Z"}], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveEcommerceProduct: speakeasy-default-retrieve-ecommerce-product: parameters: - header: - x-connection-token: path: - id: + id: "" query: {} + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - description: best tee ever - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - images_urls: - - https://myproduct/image - modified_at: "2024-10-01T12:00:00Z" - product_status: ACTIVE - product_type: teeshirt - product_url: https://product_url/tee - remote_id: id_1 - tags: - - tag_1 - vendor: vendor_extern + application/json: {"product_url": "https://product_url/tee", "product_type": "teeshirt", "product_status": "ACTIVE", "images_urls": ["https://myproduct/image"], "description": "best tee ever", "vendor": "vendor_extern", "tags": ["tag_1"], "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveFilestorageFile: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - file_url: https://example.com/my_paris_photo.png - folder_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - mime_type: application/pdf - modified_at: "2024-10-01T12:00:00Z" - name: my_paris_photo.png - permission: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - shared_link: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - size: "1024" + application/json: {"name": "my_paris_photo.png", "file_url": "https://example.com/my_paris_photo.png", "mime_type": "application/pdf", "size": "1024", "folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveFilestorageFolder: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: - "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - description: All things school related - drive_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - field_mappings: - fav_color: red - fav_dish: broccoli - folder_url: https://example.com/school - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: school - parent_folder_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - permission: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - shared_link: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - size: "2048" + "200": + application/json: {"name": "school", "size": "2048", "folder_url": "https://example.com/school", "description": "All things school related", "drive_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "parent_folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveFilestorageGroup: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: My group - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - remote_was_deleted: false - users: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"name": "My group", "users": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "remote_was_deleted": false, "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveFilestorageUser: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - email: joe.doe@gmail.com - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - is_me: true - modified_at: "2024-10-01T12:00:00Z" - name: Joe Doe - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 + application/json: {"name": "Joe Doe", "email": "joe.doe@gmail.com", "is_me": true, "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveHrisBankInfo: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5719,12 +3765,12 @@ examples: retrieveHrisBenefit: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5744,12 +3790,12 @@ examples: retrieveHrisCompany: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5769,12 +3815,12 @@ examples: retrieveHrisDependent: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5798,12 +3844,12 @@ examples: retrieveHrisEmployee: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5844,12 +3890,12 @@ examples: retrieveHrisEmployeePayrollRun: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5872,12 +3918,12 @@ examples: retrieveHrisEmployerBenefit: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5894,12 +3940,12 @@ examples: retrieveHrisEmployment: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5922,12 +3968,12 @@ examples: retrieveHrisGroup: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5943,12 +3989,12 @@ examples: retrieveHrisLocation: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5972,12 +4018,12 @@ examples: retrieveHrisPaygroup: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -5991,12 +4037,12 @@ examples: retrieveHrisPayrollRun: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -6016,12 +4062,12 @@ examples: retrieveHrisTimeoff: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -6043,12 +4089,12 @@ examples: retrieveHrisTimeoffbalance: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -6065,12 +4111,12 @@ examples: retrieveHrisTimesheetentry: "": parameters: - header: - x-connection-token: path: id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f query: remote_data: false + header: + x-connection-token: responses: "200": application/json: @@ -6088,360 +4134,218 @@ examples: "": parameters: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" responses: "200": - application/json: - alias: acme - id_linked_user: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - linked_user_origin_id: id_1 + application/json: {"id_linked_user": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "linked_user_origin_id": "id_1", "alias": "acme", "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f"} retrieveMarketingAutomationContact: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingAutomationUser: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationAction: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationAutomation: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationCampaign: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationEmail: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationEvent: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationList: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationMessage: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveMarketingautomationTemplate: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" retrieveTicketingAccount: speakeasy-default-retrieve-ticketing-account: parameters: - header: - x-connection-token: path: - id: + id: "" query: {} + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - domains: - - acme.com - - acme-test.com - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: My Personal Account - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 + application/json: {"name": "My Personal Account", "domains": ["acme.com", "acme-test.com"], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveTicketingAttachment: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - comment_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - file_name: features_planning.pdf - file_url: https://example.com/features_planning.pdf - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - uploader: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + application/json: {"file_name": "features_planning.pdf", "file_url": "https://example.com/features_planning.pdf", "uploader": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "comment_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveTicketingComment: speakeasy-default-retrieve-ticketing-comment: parameters: - header: - x-connection-token: path: - id: + id: "" query: {} + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} retrieveTicketingContact: speakeasy-default-retrieve-ticketing-contact: parameters: - header: - x-connection-token: path: - id: + id: "" query: {} + header: + x-connection-token: "" responses: "200": - application/json: - data: [] - next_cursor: - prev_cursor: + application/json: {"prev_cursor": "", "next_cursor": "", "data": []} retrieveTicketingTag: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: urgent_tag - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 + application/json: {"name": "urgent_tag", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveTicketingTeam: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - created_at: "2024-10-01T12:00:00Z" - description: Internal members - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: My team - remote_data: - fav_color: red - fav_dish: broccoli - remote_id: id_1 + application/json: {"name": "My team", "description": "Internal members", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"fav_color": "red", "fav_dish": "broccoli"}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveTicketingTicket: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - assigned_to: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - collections: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - comment: - attachments: - - 801f9ede-c698-4e66-a7fc-48d19eebaa4f - body: Assigned to Eric ! - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - creator_type: USER - html_body:

Assigned to Eric !

- is_private: false - ticket_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - user_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - completed_at: "2024-10-01T12:00:00Z" - contact_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - description: Help customer - due_date: "2024-10-01T12:00:00Z" - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2024-10-01T12:00:00Z" - name: Customer Service Inquiry - parent_ticket: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - priority: HIGH - remote_data: - key1: value1 - key2: 42 - key3: true - remote_id: id_1 - status: OPEN - tags: - - my_tag - - urgent_tag - type: BUG + application/json: {"name": "Customer Service Inquiry", "status": "OPEN", "description": "Help customer", "due_date": "2024-10-01T12:00:00Z", "type": "BUG", "parent_ticket": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "collections": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "tags": ["my_tag", "urgent_tag"], "completed_at": "2024-10-01T12:00:00Z", "priority": "HIGH", "assigned_to": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "comment": {"body": "Assigned to Eric !", "html_body": "

Assigned to Eric !

", "is_private": false, "creator_type": "USER", "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"]}, "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "attachments": ["801f9ede-c698-4e66-a7fc-48d19eebaa4f"], "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"key1": "value1", "key2": 42, "key3": true}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2024-10-01T12:00:00Z"} retrieveTicketingUser: "": parameters: - header: - x-connection-token: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" query: remote_data: false + header: + x-connection-token: "" responses: "200": - application/json: - account_id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - created_at: "2024-10-01T12:00:00Z" - email_address: john.doe@example.com - field_mappings: - fav_color: red - fav_dish: broccoli - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - modified_at: "2023-10-01T12:00:00Z" - name: John Doe - remote_data: - key1: value1 - key2: 42 - key3: true - remote_id: id_1 - teams: - - team1 - - team2 + application/json: {"name": "John Doe", "email_address": "john.doe@example.com", "teams": ["team1", "team2"], "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {"fav_color": "red", "fav_dish": "broccoli"}, "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "remote_id": "id_1", "remote_data": {"key1": "value1", "key2": 42, "key3": true}, "created_at": "2024-10-01T12:00:00Z", "modified_at": "2023-10-01T12:00:00Z"} signIn: speakeasy-default-sign-in: requestBody: - application/json: - email: Oda.Treutel97@hotmail.com - password_hash: + application/json: {"id_user": "", "email": "Oda.Treutel97@hotmail.com", "password_hash": ""} status: "": parameters: path: - vertical: ticketing + vertical: "ticketing" updatePullFrequency: speakeasy-default-update-pull-frequency: requestBody: - application/json: - accounting: 14400 - ats: 3600 - crm: 1800 - ecommerce: 43200 - filestorage: 28800 - hris: 7200 - ticketing: 86400 + application/json: {"crm": 1800, "accounting": 14400, "filestorage": 28800, "ecommerce": 43200, "ticketing": 86400} updateStatus: "": parameters: path: - id: 801f9ede-c698-4e66-a7fc-48d19eebaa4f + id: "801f9ede-c698-4e66-a7fc-48d19eebaa4f" responses: "201": - application/json: - active: true - created_at: "2024-10-01T12:00:00Z" - endpoint_description: Webhook to receive connection events - id_project: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - id_webhook_endpoint: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - last_update: "2024-10-01T12:00:00Z" - scope: - - connection.created - secret: 801f9ede-c698-4e66-a7fc-48d19eebaa4f - url: https://acme.com/webhook_receiver + application/json: {"id_webhook_endpoint": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "endpoint_description": "Webhook to receive connection events", "url": "https://acme.com/webhook_receiver", "secret": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "active": true, "created_at": "2024-10-01T12:00:00Z", "scope": ["connection.created"], "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "last_update": "2024-10-01T12:00:00Z"} verifyEvent: speakeasy-default-verify-event: requestBody: - application/json: - payload: {} - secret: - signature: + application/json: {"payload": {}, "signature": "", "secret": ""} responses: "201": - application/json: - key: + application/json: {"key": ""} diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 1e26739..9cf2c7e 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -11,18 +11,23 @@ generation: requestResponseComponentNamesFeb2024: true auth: oAuth2ClientCredentialsEnabled: false + oAuth2PasswordEnabled: false python: - version: 0.7.0 + version: 0.8.0 additionalDependencies: dev: {} main: {} authors: - Speakeasy clientServerStatusCodesAsErrors: true + defaultErrorName: SDKError description: Python Client SDK Generated by Speakeasy. enumFormat: enum + fixFlags: + responseRequiredSep2024: false flattenGlobalSecurity: true flattenRequests: false + flatteningOrder: parameters-first imports: option: openapi paths: diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index aec0f1b..eb3808c 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,21 +1,20 @@ -speakeasyVersion: 1.352.2 +speakeasyVersion: 1.440.2 sources: openapi-main: sourceNamespace: openapi-main - sourceRevisionDigest: sha256:ee9530a9c0d9b4168cd8f196bfc4fe2f8114b7bcabeced7ff1c367cd9b1c9833 - sourceBlobDigest: sha256:73e64741e7167fa8e745f9e9097eb4319079fe03ed544105eedf09200cbcc501 + sourceRevisionDigest: sha256:4df86292a3466dfc43845d416a1c9c2364e3616d2e0f5ddc536ef99ccdacf34d + sourceBlobDigest: sha256:c3baeb1c04282c36b71950e2794c677901e518bc81a6fbe3b27510ce6d74e56a tags: - latest - - main + - speakeasy-sdk-regen-1731953556 targets: python: source: openapi-main sourceNamespace: openapi-main - sourceRevisionDigest: sha256:ee9530a9c0d9b4168cd8f196bfc4fe2f8114b7bcabeced7ff1c367cd9b1c9833 - sourceBlobDigest: sha256:73e64741e7167fa8e745f9e9097eb4319079fe03ed544105eedf09200cbcc501 + sourceRevisionDigest: sha256:4df86292a3466dfc43845d416a1c9c2364e3616d2e0f5ddc536ef99ccdacf34d + sourceBlobDigest: sha256:c3baeb1c04282c36b71950e2794c677901e518bc81a6fbe3b27510ce6d74e56a codeSamplesNamespace: code-samples-python - codeSamplesRevisionDigest: sha256:035fb02c149fe065da447911ecd03e8c799ed7263f2b2dde62e1a1b4bef00a5e - outLocation: /github/workspace/repo + codeSamplesRevisionDigest: sha256:b1f5ac968527ae9476bd3384b3dacc197157ddc7ad8b339e24ec1b2a201222a1 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/README.md b/README.md index 8199501..89637e9 100644 --- a/README.md +++ b/README.md @@ -41,12 +41,20 @@ Panora API: A unified API to ship integrations ## SDK Installation -PIP +The SDK can be installed with either *pip* or *poetry* package managers. + +### PIP + +*PIP* is the default package installer for Python, enabling easy installation and management of packages from PyPI via the command line. + ```bash pip install panora-sdk ``` -Poetry +### Poetry + +*Poetry* is a modern tool that simplifies dependency management and package publishing by using a single `pyproject.toml` file to handle project metadata and dependencies. + ```bash poetry add panora-sdk ``` @@ -75,7 +83,6 @@ s = Panora( api_key="", ) - res = s.hello() if res is not None: @@ -107,541 +114,399 @@ asyncio.run(main()) ## Available Resources and Operations -### [Panora SDK](docs/sdks/panora/README.md) +
+Available methods -* [hello](docs/sdks/panora/README.md#hello) -* [health](docs/sdks/panora/README.md#health) +### [accounting](docs/sdks/accounting/README.md) -### [rag.query](docs/sdks/query/README.md) +#### [accounting.accounts](docs/sdks/panoraaccounts/README.md) -* [query](docs/sdks/query/README.md#query) - Query using RAG Search +* [list](docs/sdks/panoraaccounts/README.md#list) - List Accounts +* [create](docs/sdks/panoraaccounts/README.md#create) - Create Accounts +* [retrieve](docs/sdks/panoraaccounts/README.md#retrieve) - Retrieve Accounts +#### [accounting.addresses](docs/sdks/addresses/README.md) -### [filestorage.files](docs/sdks/files/README.md) +* [list](docs/sdks/addresses/README.md#list) - List Addresss +* [retrieve](docs/sdks/addresses/README.md#retrieve) - Retrieve Addresses -* [list](docs/sdks/files/README.md#list) - List Files -* [create](docs/sdks/files/README.md#create) - Create Files -* [retrieve](docs/sdks/files/README.md#retrieve) - Retrieve Files +#### [accounting.attachments](docs/sdks/attachments/README.md) -### [filestorage.folders](docs/sdks/folders/README.md) +* [list](docs/sdks/attachments/README.md#list) - List Attachments +* [create](docs/sdks/attachments/README.md#create) - Create Attachments +* [retrieve](docs/sdks/attachments/README.md#retrieve) - Retrieve Attachments -* [list](docs/sdks/folders/README.md#list) - List Folders -* [create](docs/sdks/folders/README.md#create) - Create Folders -* [retrieve](docs/sdks/folders/README.md#retrieve) - Retrieve Folders +#### [accounting.balancesheets](docs/sdks/balancesheets/README.md) -### [filestorage.groups](docs/sdks/panoragroups/README.md) +* [list](docs/sdks/balancesheets/README.md#list) - List BalanceSheets +* [retrieve](docs/sdks/balancesheets/README.md#retrieve) - Retrieve BalanceSheets -* [list](docs/sdks/panoragroups/README.md#list) - List Groups -* [retrieve](docs/sdks/panoragroups/README.md#retrieve) - Retrieve Groups +#### [accounting.cashflowstatements](docs/sdks/cashflowstatements/README.md) -### [filestorage.users](docs/sdks/panorafilestorageusers/README.md) +* [list](docs/sdks/cashflowstatements/README.md#list) - List CashflowStatements +* [retrieve](docs/sdks/cashflowstatements/README.md#retrieve) - Retrieve Cashflow Statements -* [list](docs/sdks/panorafilestorageusers/README.md#list) - List Users -* [retrieve](docs/sdks/panorafilestorageusers/README.md#retrieve) - Retrieve Users +#### [accounting.companyinfos](docs/sdks/companyinfos/README.md) +* [list](docs/sdks/companyinfos/README.md#list) - List CompanyInfos +* [retrieve](docs/sdks/companyinfos/README.md#retrieve) - Retrieve Company Infos -### [auth.login](docs/sdks/login/README.md) +#### [accounting.contacts](docs/sdks/panoraaccountingcontacts/README.md) -* [sign_in](docs/sdks/login/README.md#sign_in) - Log In +* [list](docs/sdks/panoraaccountingcontacts/README.md#list) - List Contacts +* [create](docs/sdks/panoraaccountingcontacts/README.md#create) - Create Contacts +* [retrieve](docs/sdks/panoraaccountingcontacts/README.md#retrieve) - Retrieve Contacts -### [connections](docs/sdks/connections/README.md) +#### [accounting.creditnotes](docs/sdks/creditnotes/README.md) -* [list](docs/sdks/connections/README.md#list) - List Connections +* [list](docs/sdks/creditnotes/README.md#list) - List CreditNotes +* [retrieve](docs/sdks/creditnotes/README.md#retrieve) - Retrieve Credit Notes -### [webhooks](docs/sdks/webhooks/README.md) +#### [accounting.expenses](docs/sdks/expenses/README.md) -* [list](docs/sdks/webhooks/README.md#list) - List webhooks -* [create](docs/sdks/webhooks/README.md#create) - Create webhook -* [delete](docs/sdks/webhooks/README.md#delete) - Delete Webhook -* [update_status](docs/sdks/webhooks/README.md#update_status) - Update webhook status -* [verify_event](docs/sdks/webhooks/README.md#verify_event) - Verify payload signature of the webhook +* [list](docs/sdks/expenses/README.md#list) - List Expenses +* [create](docs/sdks/expenses/README.md#create) - Create Expenses +* [retrieve](docs/sdks/expenses/README.md#retrieve) - Retrieve Expenses +#### [accounting.incomestatements](docs/sdks/incomestatements/README.md) -### [ticketing.tickets](docs/sdks/tickets/README.md) +* [list](docs/sdks/incomestatements/README.md#list) - List IncomeStatements +* [retrieve](docs/sdks/incomestatements/README.md#retrieve) - Retrieve Income Statements -* [list](docs/sdks/tickets/README.md#list) - List Tickets -* [create](docs/sdks/tickets/README.md#create) - Create Tickets -* [retrieve](docs/sdks/tickets/README.md#retrieve) - Retrieve Tickets +#### [accounting.invoices](docs/sdks/invoices/README.md) -### [ticketing.users](docs/sdks/users/README.md) +* [list](docs/sdks/invoices/README.md#list) - List Invoices +* [create](docs/sdks/invoices/README.md#create) - Create Invoices +* [retrieve](docs/sdks/invoices/README.md#retrieve) - Retrieve Invoices -* [list](docs/sdks/users/README.md#list) - List Users -* [retrieve](docs/sdks/users/README.md#retrieve) - Retrieve User +#### [accounting.items](docs/sdks/items/README.md) -### [ticketing.accounts](docs/sdks/accounts/README.md) +* [list](docs/sdks/items/README.md#list) - List Items +* [retrieve](docs/sdks/items/README.md#retrieve) - Retrieve Items -* [list](docs/sdks/accounts/README.md#list) - List Accounts -* [retrieve](docs/sdks/accounts/README.md#retrieve) - Retrieve Accounts +#### [accounting.journalentries](docs/sdks/journalentries/README.md) -### [ticketing.contacts](docs/sdks/contacts/README.md) +* [list](docs/sdks/journalentries/README.md#list) - List JournalEntrys +* [create](docs/sdks/journalentries/README.md#create) - Create Journal Entries +* [retrieve](docs/sdks/journalentries/README.md#retrieve) - Retrieve Journal Entries -* [list](docs/sdks/contacts/README.md#list) - List Contacts -* [retrieve](docs/sdks/contacts/README.md#retrieve) - Retrieve Contact +#### [accounting.payments](docs/sdks/payments/README.md) -### [ticketing.collections](docs/sdks/collections/README.md) +* [list](docs/sdks/payments/README.md#list) - List Payments +* [create](docs/sdks/payments/README.md#create) - Create Payments +* [retrieve](docs/sdks/payments/README.md#retrieve) - Retrieve Payments -* [list](docs/sdks/collections/README.md#list) - List Collections -* [retrieve](docs/sdks/collections/README.md#retrieve) - Retrieve Collections +#### [accounting.phonenumbers](docs/sdks/phonenumbers/README.md) -### [ticketing.comments](docs/sdks/comments/README.md) +* [list](docs/sdks/phonenumbers/README.md#list) - List PhoneNumbers +* [retrieve](docs/sdks/phonenumbers/README.md#retrieve) - Retrieve Phone Numbers -* [list](docs/sdks/comments/README.md#list) - List Comments -* [create](docs/sdks/comments/README.md#create) - Create Comments -* [retrieve](docs/sdks/comments/README.md#retrieve) - Retrieve Comment +#### [accounting.purchaseorders](docs/sdks/purchaseorders/README.md) -### [ticketing.tags](docs/sdks/tags/README.md) +* [list](docs/sdks/purchaseorders/README.md#list) - List PurchaseOrders +* [create](docs/sdks/purchaseorders/README.md#create) - Create Purchase Orders +* [retrieve](docs/sdks/purchaseorders/README.md#retrieve) - Retrieve Purchase Orders -* [list](docs/sdks/tags/README.md#list) - List Tags -* [retrieve](docs/sdks/tags/README.md#retrieve) - Retrieve Tag +#### [accounting.taxrates](docs/sdks/taxrates/README.md) -### [ticketing.teams](docs/sdks/teams/README.md) +* [list](docs/sdks/taxrates/README.md#list) - List TaxRates +* [retrieve](docs/sdks/taxrates/README.md#retrieve) - Retrieve Tax Rates -* [list](docs/sdks/teams/README.md#list) - List Teams -* [retrieve](docs/sdks/teams/README.md#retrieve) - Retrieve Teams +#### [accounting.trackingcategories](docs/sdks/trackingcategories/README.md) -### [ticketing.attachments](docs/sdks/panoraticketingattachments/README.md) +* [list](docs/sdks/trackingcategories/README.md#list) - List TrackingCategorys +* [retrieve](docs/sdks/trackingcategories/README.md#retrieve) - Retrieve Tracking Categories -* [list](docs/sdks/panoraticketingattachments/README.md#list) - List Attachments -* [create](docs/sdks/panoraticketingattachments/README.md#create) - Create Attachments -* [retrieve](docs/sdks/panoraticketingattachments/README.md#retrieve) - Retrieve Attachments +#### [accounting.transactions](docs/sdks/transactions/README.md) -### [sync](docs/sdks/sync/README.md) +* [list](docs/sdks/transactions/README.md#list) - List Transactions +* [retrieve](docs/sdks/transactions/README.md#retrieve) - Retrieve Transactions -* [status](docs/sdks/sync/README.md#status) - Retrieve sync status of a certain vertical -* [resync](docs/sdks/sync/README.md#resync) - Resync common objects across a vertical -* [update_pull_frequency](docs/sdks/sync/README.md#update_pull_frequency) - Update pull frequency for verticals -* [get_pull_frequency](docs/sdks/sync/README.md#get_pull_frequency) - Get pull frequency for verticals +#### [accounting.vendorcredits](docs/sdks/vendorcredits/README.md) + +* [list](docs/sdks/vendorcredits/README.md#list) - List VendorCredits +* [retrieve](docs/sdks/vendorcredits/README.md#retrieve) - Retrieve Vendor Credits + +### [auth](docs/sdks/auth/README.md) + + +#### [auth.login](docs/sdks/login/README.md) + +* [sign_in](docs/sdks/login/README.md#sign_in) - Log In + +### [connections](docs/sdks/connections/README.md) + +* [list](docs/sdks/connections/README.md#list) - List Connections +### [crm](docs/sdks/crm/README.md) -### [crm.companies](docs/sdks/companies/README.md) + +#### [crm.companies](docs/sdks/companies/README.md) * [list](docs/sdks/companies/README.md#list) - List Companies * [create](docs/sdks/companies/README.md#create) - Create Companies * [retrieve](docs/sdks/companies/README.md#retrieve) - Retrieve Companies -### [crm.contacts](docs/sdks/panoracontacts/README.md) +#### [crm.contacts](docs/sdks/panoracontacts/README.md) * [list](docs/sdks/panoracontacts/README.md#list) - List CRM Contacts * [create](docs/sdks/panoracontacts/README.md#create) - Create Contacts * [retrieve](docs/sdks/panoracontacts/README.md#retrieve) - Retrieve Contacts -### [crm.deals](docs/sdks/deals/README.md) +#### [crm.deals](docs/sdks/deals/README.md) * [list](docs/sdks/deals/README.md#list) - List Deals * [create](docs/sdks/deals/README.md#create) - Create Deals * [retrieve](docs/sdks/deals/README.md#retrieve) - Retrieve Deals -### [crm.engagements](docs/sdks/engagements/README.md) +#### [crm.engagements](docs/sdks/engagements/README.md) * [list](docs/sdks/engagements/README.md#list) - List Engagements * [create](docs/sdks/engagements/README.md#create) - Create Engagements * [retrieve](docs/sdks/engagements/README.md#retrieve) - Retrieve Engagements -### [crm.notes](docs/sdks/notes/README.md) +#### [crm.notes](docs/sdks/notes/README.md) * [list](docs/sdks/notes/README.md#list) - List Notes * [create](docs/sdks/notes/README.md#create) - Create Notes * [retrieve](docs/sdks/notes/README.md#retrieve) - Retrieve Notes -### [crm.stages](docs/sdks/stages/README.md) +#### [crm.stages](docs/sdks/stages/README.md) * [list](docs/sdks/stages/README.md#list) - List Stages * [retrieve](docs/sdks/stages/README.md#retrieve) - Retrieve Stages -### [crm.tasks](docs/sdks/tasks/README.md) +#### [crm.tasks](docs/sdks/tasks/README.md) * [list](docs/sdks/tasks/README.md#list) - List Tasks * [create](docs/sdks/tasks/README.md#create) - Create Tasks * [retrieve](docs/sdks/tasks/README.md#retrieve) - Retrieve Tasks -### [crm.users](docs/sdks/panorausers/README.md) +#### [crm.users](docs/sdks/panorausers/README.md) * [list](docs/sdks/panorausers/README.md#list) - List Users * [retrieve](docs/sdks/panorausers/README.md#retrieve) - Retrieve Users -### [linked_users](docs/sdks/linkedusers/README.md) +### [ecommerce](docs/sdks/ecommerce/README.md) -* [create](docs/sdks/linkedusers/README.md#create) - Create Linked Users -* [list](docs/sdks/linkedusers/README.md#list) - List Linked Users -* [import_batch](docs/sdks/linkedusers/README.md#import_batch) - Add Batch Linked Users -* [retrieve](docs/sdks/linkedusers/README.md#retrieve) - Retrieve Linked Users -* [remote_id](docs/sdks/linkedusers/README.md#remote_id) - Retrieve a Linked User From A Remote Id - -### [projects](docs/sdks/projects/README.md) -* [get_projects](docs/sdks/projects/README.md#get_projects) - Retrieve projects -* [create](docs/sdks/projects/README.md#create) - Create a project +#### [ecommerce.customers](docs/sdks/customers/README.md) -### [field_mappings](docs/sdks/fieldmappings/README.md) - -* [get_field_mapping_values](docs/sdks/fieldmappings/README.md#get_field_mapping_values) - Retrieve field mappings values -* [get_field_mappings_entities](docs/sdks/fieldmappings/README.md#get_field_mappings_entities) - Retrieve field mapping entities -* [get_field_mappings](docs/sdks/fieldmappings/README.md#get_field_mappings) - Retrieve field mappings -* [definitions](docs/sdks/fieldmappings/README.md#definitions) - Define target Field -* [define_custom_field](docs/sdks/fieldmappings/README.md#define_custom_field) - Create Custom Field -* [map](docs/sdks/fieldmappings/README.md#map) - Map Custom Field - -### [events](docs/sdks/events/README.md) - -* [get_panora_core_events](docs/sdks/events/README.md#get_panora_core_events) - List Events - -### [passthrough](docs/sdks/passthrough/README.md) - -* [request](docs/sdks/passthrough/README.md#request) - Make a passthrough request - -### [passthrough.retryid](docs/sdks/retryid/README.md) - -* [get_retried_request_response](docs/sdks/retryid/README.md#get_retried_request_response) - Retrieve response of a failed passthrough request due to rate limits - - -### [hris.bankinfos](docs/sdks/bankinfos/README.md) - -* [list](docs/sdks/bankinfos/README.md#list) - List Bank Info -* [retrieve](docs/sdks/bankinfos/README.md#retrieve) - Retrieve Bank Info - -### [hris.benefits](docs/sdks/benefits/README.md) - -* [list](docs/sdks/benefits/README.md#list) - List Benefits -* [retrieve](docs/sdks/benefits/README.md#retrieve) - Retrieve Benefit - -### [hris.companies](docs/sdks/panoracompanies/README.md) - -* [list](docs/sdks/panoracompanies/README.md#list) - List Companies -* [retrieve](docs/sdks/panoracompanies/README.md#retrieve) - Retrieve Company - -### [hris.dependents](docs/sdks/dependents/README.md) +* [list](docs/sdks/customers/README.md#list) - List Customers +* [retrieve](docs/sdks/customers/README.md#retrieve) - Retrieve Customers -* [list](docs/sdks/dependents/README.md#list) - List Dependents -* [retrieve](docs/sdks/dependents/README.md#retrieve) - Retrieve Dependent +#### [ecommerce.fulfillments](docs/sdks/fulfillments/README.md) -### [hris.employeepayrollruns](docs/sdks/employeepayrollruns/README.md) +* [list](docs/sdks/fulfillments/README.md#list) - List Fulfillments +* [retrieve](docs/sdks/fulfillments/README.md#retrieve) - Retrieve Fulfillments -* [list](docs/sdks/employeepayrollruns/README.md#list) - List Employee Payroll Runs -* [retrieve](docs/sdks/employeepayrollruns/README.md#retrieve) - Retrieve Employee Payroll Run +#### [ecommerce.orders](docs/sdks/orders/README.md) -### [hris.employees](docs/sdks/employees/README.md) +* [list](docs/sdks/orders/README.md#list) - List Orders +* [create](docs/sdks/orders/README.md#create) - Create Orders +* [retrieve](docs/sdks/orders/README.md#retrieve) - Retrieve Orders -* [list](docs/sdks/employees/README.md#list) - List Employees -* [create](docs/sdks/employees/README.md#create) - Create Employees -* [retrieve](docs/sdks/employees/README.md#retrieve) - Retrieve Employee +#### [ecommerce.products](docs/sdks/products/README.md) -### [hris.employerbenefits](docs/sdks/employerbenefits/README.md) +* [list](docs/sdks/products/README.md#list) - List Products +* [create](docs/sdks/products/README.md#create) - Create Products +* [retrieve](docs/sdks/products/README.md#retrieve) - Retrieve Products -* [list](docs/sdks/employerbenefits/README.md#list) - List Employer Benefits -* [retrieve](docs/sdks/employerbenefits/README.md#retrieve) - Retrieve Employer Benefit +### [events](docs/sdks/events/README.md) -### [hris.employments](docs/sdks/employments/README.md) +* [get_panora_core_events](docs/sdks/events/README.md#get_panora_core_events) - List Events -* [list](docs/sdks/employments/README.md#list) - List Employments -* [retrieve](docs/sdks/employments/README.md#retrieve) - Retrieve Employment +### [field_mappings](docs/sdks/fieldmappings/README.md) -### [hris.groups](docs/sdks/groups/README.md) +* [get_field_mapping_values](docs/sdks/fieldmappings/README.md#get_field_mapping_values) - Retrieve field mappings values +* [get_field_mappings_entities](docs/sdks/fieldmappings/README.md#get_field_mappings_entities) - Retrieve field mapping entities +* [get_field_mappings](docs/sdks/fieldmappings/README.md#get_field_mappings) - Retrieve field mappings +* [definitions](docs/sdks/fieldmappings/README.md#definitions) - Define target Field +* [define_custom_field](docs/sdks/fieldmappings/README.md#define_custom_field) - Create Custom Field +* [map](docs/sdks/fieldmappings/README.md#map) - Map Custom Field -* [list](docs/sdks/groups/README.md#list) - List Groups -* [retrieve](docs/sdks/groups/README.md#retrieve) - Retrieve Group +### [filestorage](docs/sdks/filestorage/README.md) -### [hris.locations](docs/sdks/locations/README.md) -* [list](docs/sdks/locations/README.md#list) - List Locations -* [retrieve](docs/sdks/locations/README.md#retrieve) - Retrieve Location +#### [filestorage.files](docs/sdks/files/README.md) -### [hris.paygroups](docs/sdks/paygroups/README.md) +* [list](docs/sdks/files/README.md#list) - List Files +* [create](docs/sdks/files/README.md#create) - Create Files +* [retrieve](docs/sdks/files/README.md#retrieve) - Retrieve Files -* [list](docs/sdks/paygroups/README.md#list) - List Pay Groups -* [retrieve](docs/sdks/paygroups/README.md#retrieve) - Retrieve Pay Group +#### [filestorage.folders](docs/sdks/folders/README.md) -### [hris.payrollruns](docs/sdks/payrollruns/README.md) +* [list](docs/sdks/folders/README.md#list) - List Folders +* [create](docs/sdks/folders/README.md#create) - Create Folders +* [retrieve](docs/sdks/folders/README.md#retrieve) - Retrieve Folders -* [list](docs/sdks/payrollruns/README.md#list) - List Payroll Runs -* [retrieve](docs/sdks/payrollruns/README.md#retrieve) - Retrieve Payroll Run +#### [filestorage.groups](docs/sdks/groups/README.md) -### [hris.timeoffs](docs/sdks/timeoffs/README.md) +* [list](docs/sdks/groups/README.md#list) - List Groups +* [retrieve](docs/sdks/groups/README.md#retrieve) - Retrieve Groups -* [list](docs/sdks/timeoffs/README.md#list) - List Time Offs -* [create](docs/sdks/timeoffs/README.md#create) - Create Timeoffs -* [retrieve](docs/sdks/timeoffs/README.md#retrieve) - Retrieve Time Off +#### [filestorage.users](docs/sdks/panorafilestorageusers/README.md) -### [hris.timeoffbalances](docs/sdks/timeoffbalances/README.md) +* [list](docs/sdks/panorafilestorageusers/README.md#list) - List Users +* [retrieve](docs/sdks/panorafilestorageusers/README.md#retrieve) - Retrieve Users -* [list](docs/sdks/timeoffbalances/README.md#list) - List TimeoffBalances -* [retrieve](docs/sdks/timeoffbalances/README.md#retrieve) - Retrieve Time off Balances +### [linked_users](docs/sdks/linkedusers/README.md) -### [hris.timesheetentries](docs/sdks/timesheetentries/README.md) +* [remote_id](docs/sdks/linkedusers/README.md#remote_id) - Retrieve a Linked User From A Remote Id +* [create](docs/sdks/linkedusers/README.md#create) - Create Linked Users +* [list](docs/sdks/linkedusers/README.md#list) - List Linked Users +* [import_batch](docs/sdks/linkedusers/README.md#import_batch) - Add Batch Linked Users +* [retrieve](docs/sdks/linkedusers/README.md#retrieve) - Retrieve Linked Users -* [list](docs/sdks/timesheetentries/README.md#list) - List Timesheetentries -* [create](docs/sdks/timesheetentries/README.md#create) - Create Timesheetentrys -* [retrieve](docs/sdks/timesheetentries/README.md#retrieve) - Retrieve Timesheetentry +### [marketingautomation](docs/sdks/marketingautomation/README.md) -### [marketingautomation.actions](docs/sdks/actions/README.md) +#### [marketingautomation.actions](docs/sdks/actions/README.md) * [list](docs/sdks/actions/README.md#list) - List Actions * [create](docs/sdks/actions/README.md#create) - Create Action * [retrieve](docs/sdks/actions/README.md#retrieve) - Retrieve Actions -### [marketingautomation.automations](docs/sdks/automations/README.md) +#### [marketingautomation.automations](docs/sdks/automations/README.md) * [list](docs/sdks/automations/README.md#list) - List Automations * [create](docs/sdks/automations/README.md#create) - Create Automation * [retrieve](docs/sdks/automations/README.md#retrieve) - Retrieve Automation -### [marketingautomation.campaigns](docs/sdks/campaigns/README.md) +#### [marketingautomation.campaigns](docs/sdks/campaigns/README.md) * [list](docs/sdks/campaigns/README.md#list) - List Campaigns * [create](docs/sdks/campaigns/README.md#create) - Create Campaign * [retrieve](docs/sdks/campaigns/README.md#retrieve) - Retrieve Campaign -### [marketingautomation.contacts](docs/sdks/panoramarketingautomationcontacts/README.md) +#### [marketingautomation.contacts](docs/sdks/panoramarketingautomationcontacts/README.md) * [list](docs/sdks/panoramarketingautomationcontacts/README.md#list) - List Contacts * [create](docs/sdks/panoramarketingautomationcontacts/README.md#create) - Create Contact * [retrieve](docs/sdks/panoramarketingautomationcontacts/README.md#retrieve) - Retrieve Contacts -### [marketingautomation.emails](docs/sdks/emails/README.md) +#### [marketingautomation.emails](docs/sdks/emails/README.md) * [list](docs/sdks/emails/README.md#list) - List Emails * [retrieve](docs/sdks/emails/README.md#retrieve) - Retrieve Email -### [marketingautomation.events](docs/sdks/panoraevents/README.md) +#### [marketingautomation.events](docs/sdks/panoraevents/README.md) * [list](docs/sdks/panoraevents/README.md#list) - List Events * [retrieve](docs/sdks/panoraevents/README.md#retrieve) - Retrieve Event -### [marketingautomation.lists](docs/sdks/lists/README.md) +#### [marketingautomation.lists](docs/sdks/lists/README.md) * [list](docs/sdks/lists/README.md#list) - List Lists * [create](docs/sdks/lists/README.md#create) - Create Lists * [retrieve](docs/sdks/lists/README.md#retrieve) - Retrieve List -### [marketingautomation.messages](docs/sdks/messages/README.md) +#### [marketingautomation.messages](docs/sdks/messages/README.md) * [list](docs/sdks/messages/README.md#list) - List Messages * [retrieve](docs/sdks/messages/README.md#retrieve) - Retrieve Messages -### [marketingautomation.templates](docs/sdks/templates/README.md) +#### [marketingautomation.templates](docs/sdks/templates/README.md) * [list](docs/sdks/templates/README.md#list) - List Templates * [create](docs/sdks/templates/README.md#create) - Create Template * [retrieve](docs/sdks/templates/README.md#retrieve) - Retrieve Template -### [marketingautomation.users](docs/sdks/panoramarketingautomationusers/README.md) +#### [marketingautomation.users](docs/sdks/panoramarketingautomationusers/README.md) * [list](docs/sdks/panoramarketingautomationusers/README.md#list) - List Users * [retrieve](docs/sdks/panoramarketingautomationusers/README.md#retrieve) - Retrieve Users +### [Panora SDK](docs/sdks/panora/README.md) -### [ats.activities](docs/sdks/activities/README.md) - -* [list](docs/sdks/activities/README.md#list) - List Activities -* [create](docs/sdks/activities/README.md#create) - Create Activities -* [retrieve](docs/sdks/activities/README.md#retrieve) - Retrieve Activities - -### [ats.applications](docs/sdks/applications/README.md) - -* [list](docs/sdks/applications/README.md#list) - List Applications -* [create](docs/sdks/applications/README.md#create) - Create Applications -* [retrieve](docs/sdks/applications/README.md#retrieve) - Retrieve Applications - -### [ats.attachments](docs/sdks/attachments/README.md) - -* [list](docs/sdks/attachments/README.md#list) - List Attachments -* [create](docs/sdks/attachments/README.md#create) - Create Attachments -* [retrieve](docs/sdks/attachments/README.md#retrieve) - Retrieve Attachments - -### [ats.candidates](docs/sdks/candidates/README.md) - -* [list](docs/sdks/candidates/README.md#list) - List Candidates -* [create](docs/sdks/candidates/README.md#create) - Create Candidates -* [retrieve](docs/sdks/candidates/README.md#retrieve) - Retrieve Candidates - -### [ats.departments](docs/sdks/departments/README.md) - -* [list](docs/sdks/departments/README.md#list) - List Departments -* [retrieve](docs/sdks/departments/README.md#retrieve) - Retrieve Departments - -### [ats.interviews](docs/sdks/interviews/README.md) - -* [list](docs/sdks/interviews/README.md#list) - List Interviews -* [create](docs/sdks/interviews/README.md#create) - Create Interviews -* [retrieve](docs/sdks/interviews/README.md#retrieve) - Retrieve Interviews - -### [ats.jobinterviewstages](docs/sdks/jobinterviewstages/README.md) - -* [list](docs/sdks/jobinterviewstages/README.md#list) - List JobInterviewStages -* [retrieve](docs/sdks/jobinterviewstages/README.md#retrieve) - Retrieve Job Interview Stages - -### [ats.jobs](docs/sdks/jobs/README.md) - -* [list](docs/sdks/jobs/README.md#list) - List Jobs -* [retrieve](docs/sdks/jobs/README.md#retrieve) - Retrieve Jobs - -### [ats.offers](docs/sdks/offers/README.md) - -* [list](docs/sdks/offers/README.md#list) - List Offers -* [retrieve](docs/sdks/offers/README.md#retrieve) - Retrieve Offers - -### [ats.offices](docs/sdks/offices/README.md) - -* [list](docs/sdks/offices/README.md#list) - List Offices -* [retrieve](docs/sdks/offices/README.md#retrieve) - Retrieve Offices - -### [ats.rejectreasons](docs/sdks/rejectreasons/README.md) +* [hello](docs/sdks/panora/README.md#hello) +* [health](docs/sdks/panora/README.md#health) -* [list](docs/sdks/rejectreasons/README.md#list) - List RejectReasons -* [retrieve](docs/sdks/rejectreasons/README.md#retrieve) - Retrieve Reject Reasons +### [passthrough](docs/sdks/passthrough/README.md) -### [ats.scorecards](docs/sdks/scorecards/README.md) +* [request](docs/sdks/passthrough/README.md#request) - Make a passthrough request -* [list](docs/sdks/scorecards/README.md#list) - List ScoreCards -* [retrieve](docs/sdks/scorecards/README.md#retrieve) - Retrieve Score Cards +#### [passthrough.retryid](docs/sdks/retryid/README.md) -### [ats.tags](docs/sdks/panoratags/README.md) +* [get_retried_request_response](docs/sdks/retryid/README.md#get_retried_request_response) - Retrieve response of a failed passthrough request due to rate limits -* [list](docs/sdks/panoratags/README.md#list) - List Tags -* [retrieve](docs/sdks/panoratags/README.md#retrieve) - Retrieve Tags +### [projects](docs/sdks/projects/README.md) -### [ats.users](docs/sdks/panoraatsusers/README.md) +* [get_projects](docs/sdks/projects/README.md#get_projects) - Retrieve projects +* [create](docs/sdks/projects/README.md#create) - Create a project -* [list](docs/sdks/panoraatsusers/README.md#list) - List Users -* [retrieve](docs/sdks/panoraatsusers/README.md#retrieve) - Retrieve Users +### [rag](docs/sdks/rag/README.md) -### [ats.eeocs](docs/sdks/eeocs/README.md) +* [query](docs/sdks/rag/README.md#query) - Query using RAG Search -* [list](docs/sdks/eeocs/README.md#list) - List Eeocss -* [retrieve](docs/sdks/eeocs/README.md#retrieve) - Retrieve Eeocs +### [sync](docs/sdks/sync/README.md) +* [status](docs/sdks/sync/README.md#status) - Retrieve sync status of a certain vertical +* [resync](docs/sdks/sync/README.md#resync) - Resync common objects across a vertical +* [update_pull_frequency](docs/sdks/sync/README.md#update_pull_frequency) - Update pull frequency for verticals +* [get_pull_frequency](docs/sdks/sync/README.md#get_pull_frequency) - Get pull frequency for verticals -### [accounting.accounts](docs/sdks/panoraaccounts/README.md) +### [ticketing](docs/sdks/ticketing/README.md) -* [list](docs/sdks/panoraaccounts/README.md#list) - List Accounts -* [create](docs/sdks/panoraaccounts/README.md#create) - Create Accounts -* [retrieve](docs/sdks/panoraaccounts/README.md#retrieve) - Retrieve Accounts -### [accounting.addresses](docs/sdks/addresses/README.md) +#### [ticketing.accounts](docs/sdks/accounts/README.md) -* [list](docs/sdks/addresses/README.md#list) - List Addresss -* [retrieve](docs/sdks/addresses/README.md#retrieve) - Retrieve Addresses +* [list](docs/sdks/accounts/README.md#list) - List Accounts +* [retrieve](docs/sdks/accounts/README.md#retrieve) - Retrieve Accounts -### [accounting.attachments](docs/sdks/panoraattachments/README.md) +#### [ticketing.attachments](docs/sdks/panoraattachments/README.md) * [list](docs/sdks/panoraattachments/README.md#list) - List Attachments * [create](docs/sdks/panoraattachments/README.md#create) - Create Attachments * [retrieve](docs/sdks/panoraattachments/README.md#retrieve) - Retrieve Attachments -### [accounting.balancesheets](docs/sdks/balancesheets/README.md) - -* [list](docs/sdks/balancesheets/README.md#list) - List BalanceSheets -* [retrieve](docs/sdks/balancesheets/README.md#retrieve) - Retrieve BalanceSheets - -### [accounting.cashflowstatements](docs/sdks/cashflowstatements/README.md) - -* [list](docs/sdks/cashflowstatements/README.md#list) - List CashflowStatements -* [retrieve](docs/sdks/cashflowstatements/README.md#retrieve) - Retrieve Cashflow Statements - -### [accounting.companyinfos](docs/sdks/companyinfos/README.md) - -* [list](docs/sdks/companyinfos/README.md#list) - List CompanyInfos -* [retrieve](docs/sdks/companyinfos/README.md#retrieve) - Retrieve Company Infos - -### [accounting.contacts](docs/sdks/panoraaccountingcontacts/README.md) - -* [list](docs/sdks/panoraaccountingcontacts/README.md#list) - List Contacts -* [create](docs/sdks/panoraaccountingcontacts/README.md#create) - Create Contacts -* [retrieve](docs/sdks/panoraaccountingcontacts/README.md#retrieve) - Retrieve Contacts - -### [accounting.creditnotes](docs/sdks/creditnotes/README.md) - -* [list](docs/sdks/creditnotes/README.md#list) - List CreditNotes -* [retrieve](docs/sdks/creditnotes/README.md#retrieve) - Retrieve Credit Notes - -### [accounting.expenses](docs/sdks/expenses/README.md) - -* [list](docs/sdks/expenses/README.md#list) - List Expenses -* [create](docs/sdks/expenses/README.md#create) - Create Expenses -* [retrieve](docs/sdks/expenses/README.md#retrieve) - Retrieve Expenses - -### [accounting.incomestatements](docs/sdks/incomestatements/README.md) - -* [list](docs/sdks/incomestatements/README.md#list) - List IncomeStatements -* [retrieve](docs/sdks/incomestatements/README.md#retrieve) - Retrieve Income Statements - -### [accounting.invoices](docs/sdks/invoices/README.md) - -* [list](docs/sdks/invoices/README.md#list) - List Invoices -* [create](docs/sdks/invoices/README.md#create) - Create Invoices -* [retrieve](docs/sdks/invoices/README.md#retrieve) - Retrieve Invoices - -### [accounting.items](docs/sdks/items/README.md) - -* [list](docs/sdks/items/README.md#list) - List Items -* [retrieve](docs/sdks/items/README.md#retrieve) - Retrieve Items - -### [accounting.journalentries](docs/sdks/journalentries/README.md) - -* [list](docs/sdks/journalentries/README.md#list) - List JournalEntrys -* [create](docs/sdks/journalentries/README.md#create) - Create Journal Entries -* [retrieve](docs/sdks/journalentries/README.md#retrieve) - Retrieve Journal Entries - -### [accounting.payments](docs/sdks/payments/README.md) +#### [ticketing.collections](docs/sdks/collections/README.md) -* [list](docs/sdks/payments/README.md#list) - List Payments -* [create](docs/sdks/payments/README.md#create) - Create Payments -* [retrieve](docs/sdks/payments/README.md#retrieve) - Retrieve Payments - -### [accounting.phonenumbers](docs/sdks/phonenumbers/README.md) - -* [list](docs/sdks/phonenumbers/README.md#list) - List PhoneNumbers -* [retrieve](docs/sdks/phonenumbers/README.md#retrieve) - Retrieve Phone Numbers - -### [accounting.purchaseorders](docs/sdks/purchaseorders/README.md) - -* [list](docs/sdks/purchaseorders/README.md#list) - List PurchaseOrders -* [create](docs/sdks/purchaseorders/README.md#create) - Create Purchase Orders -* [retrieve](docs/sdks/purchaseorders/README.md#retrieve) - Retrieve Purchase Orders - -### [accounting.taxrates](docs/sdks/taxrates/README.md) - -* [list](docs/sdks/taxrates/README.md#list) - List TaxRates -* [retrieve](docs/sdks/taxrates/README.md#retrieve) - Retrieve Tax Rates +* [list](docs/sdks/collections/README.md#list) - List Collections +* [retrieve](docs/sdks/collections/README.md#retrieve) - Retrieve Collections -### [accounting.trackingcategories](docs/sdks/trackingcategories/README.md) +#### [ticketing.comments](docs/sdks/comments/README.md) -* [list](docs/sdks/trackingcategories/README.md#list) - List TrackingCategorys -* [retrieve](docs/sdks/trackingcategories/README.md#retrieve) - Retrieve Tracking Categories +* [list](docs/sdks/comments/README.md#list) - List Comments +* [create](docs/sdks/comments/README.md#create) - Create Comments +* [retrieve](docs/sdks/comments/README.md#retrieve) - Retrieve Comment -### [accounting.transactions](docs/sdks/transactions/README.md) +#### [ticketing.contacts](docs/sdks/contacts/README.md) -* [list](docs/sdks/transactions/README.md#list) - List Transactions -* [retrieve](docs/sdks/transactions/README.md#retrieve) - Retrieve Transactions +* [list](docs/sdks/contacts/README.md#list) - List Contacts +* [retrieve](docs/sdks/contacts/README.md#retrieve) - Retrieve Contact -### [accounting.vendorcredits](docs/sdks/vendorcredits/README.md) +#### [ticketing.tags](docs/sdks/tags/README.md) -* [list](docs/sdks/vendorcredits/README.md#list) - List VendorCredits -* [retrieve](docs/sdks/vendorcredits/README.md#retrieve) - Retrieve Vendor Credits +* [list](docs/sdks/tags/README.md#list) - List Tags +* [retrieve](docs/sdks/tags/README.md#retrieve) - Retrieve Tag +#### [ticketing.teams](docs/sdks/teams/README.md) -### [ecommerce.products](docs/sdks/products/README.md) +* [list](docs/sdks/teams/README.md#list) - List Teams +* [retrieve](docs/sdks/teams/README.md#retrieve) - Retrieve Teams -* [list](docs/sdks/products/README.md#list) - List Products -* [create](docs/sdks/products/README.md#create) - Create Products -* [retrieve](docs/sdks/products/README.md#retrieve) - Retrieve Products +#### [ticketing.tickets](docs/sdks/tickets/README.md) -### [ecommerce.orders](docs/sdks/orders/README.md) +* [list](docs/sdks/tickets/README.md#list) - List Tickets +* [create](docs/sdks/tickets/README.md#create) - Create Tickets +* [retrieve](docs/sdks/tickets/README.md#retrieve) - Retrieve Tickets -* [list](docs/sdks/orders/README.md#list) - List Orders -* [create](docs/sdks/orders/README.md#create) - Create Orders -* [retrieve](docs/sdks/orders/README.md#retrieve) - Retrieve Orders +#### [ticketing.users](docs/sdks/users/README.md) -### [ecommerce.customers](docs/sdks/customers/README.md) +* [list](docs/sdks/users/README.md#list) - List Users +* [retrieve](docs/sdks/users/README.md#retrieve) - Retrieve User -* [list](docs/sdks/customers/README.md#list) - List Customers -* [retrieve](docs/sdks/customers/README.md#retrieve) - Retrieve Customers +### [webhooks](docs/sdks/webhooks/README.md) -### [ecommerce.fulfillments](docs/sdks/fulfillments/README.md) +* [list](docs/sdks/webhooks/README.md#list) - List webhooks +* [create](docs/sdks/webhooks/README.md#create) - Create webhook +* [delete](docs/sdks/webhooks/README.md#delete) - Delete Webhook +* [update_status](docs/sdks/webhooks/README.md#update_status) - Update webhook status +* [verify_event](docs/sdks/webhooks/README.md#verify_event) - Verify payload signature of the webhook -* [list](docs/sdks/fulfillments/README.md#list) - List Fulfillments -* [retrieve](docs/sdks/fulfillments/README.md#retrieve) - Retrieve Fulfillments +
@@ -658,7 +523,6 @@ s = Panora( api_key="", ) - res = s.hello(, RetryConfig("backoff", BackoffStrategy(1, 50, 1.1, 100), False)) @@ -678,7 +542,6 @@ s = Panora( api_key="", ) - res = s.hello() if res is not None: @@ -691,11 +554,22 @@ if res is not None: ## Error Handling -Handling errors in this SDK should largely match your expectations. All operations return a response object or raise an error. If Error objects are specified in your OpenAPI Spec, the SDK will raise the appropriate Error type. +Handling errors in this SDK should largely match your expectations. All operations return a response object or raise an exception. + +By default, an API error will raise a models.SDKError exception, which has the following properties: + +| Property | Type | Description | +|-----------------|------------------|-----------------------| +| `.status_code` | *int* | The HTTP status code | +| `.message` | *str* | The error message | +| `.raw_response` | *httpx.Response* | The raw HTTP response | +| `.body` | *str* | The response content | + +When custom error responses are specified for an operation, the SDK may also raise their associated exceptions. You can refer to respective *Errors* tables in SDK docs for more details on possible exception types for each operation. For example, the `hello_async` method may raise the following exceptions: -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| Error Type | Status Code | Content Type | +| --------------- | ----------- | ------------ | +| models.SDKError | 4XX, 5XX | \*/\* | ### Example @@ -710,14 +584,13 @@ res = None try: res = s.hello() + if res is not None: + # handle response + pass + except models.SDKError as e: # handle exception raise(e) - -if res is not None: - # handle response - pass - ``` @@ -728,11 +601,11 @@ if res is not None: You can override the default server globally by passing a server index to the `server_idx: int` optional parameter when initializing the SDK client instance. The selected server will then be used as the default on the operations that use it. This table lists the indexes associated with the available servers: -| # | Server | Variables | -| - | ------ | --------- | -| 0 | `https://api.panora.dev` | None | -| 1 | `https://api-sandbox.panora.dev` | None | -| 2 | `https://api-dev.panora.dev` | None | +| # | Server | +| --- | -------------------------------- | +| 0 | `https://api.panora.dev` | +| 1 | `https://api-sandbox.panora.dev` | +| 2 | `https://api-dev.panora.dev` | #### Example @@ -744,7 +617,6 @@ s = Panora( api_key="", ) - res = s.hello() if res is not None: @@ -753,7 +625,6 @@ if res is not None: ``` - ### Override Server URL Per-Client The default server can also be overridden globally by passing a URL to the `server_url: str` optional parameter when initializing the SDK client instance. For example: @@ -765,7 +636,6 @@ s = Panora( api_key="", ) - res = s.hello() if res is not None: @@ -859,8 +729,9 @@ s = Panora(async_client=CustomClient(httpx.AsyncClient())) ## Debugging -To emit debug logs for SDK requests and responses you can pass a logger object directly into your SDK object. +You can setup your SDK to emit debug logs for SDK requests and responses. +You can pass your own logger class directly into your SDK. ```python from panora_sdk import Panora import logging @@ -877,11 +748,11 @@ s = Panora(debug_logger=logging.getLogger("panora_sdk")) This SDK supports the following security scheme globally: -| Name | Type | Scheme | -| --------- | --------- | --------- | -| `api_key` | apiKey | API key | +| Name | Type | Scheme | +| --------- | ------ | ------- | +| `api_key` | apiKey | API key | -To authenticate with the API the `null` parameter must be set when initializing the SDK client instance. For example: +To authenticate with the API the `api_key` parameter must be set when initializing the SDK client instance. For example: ```python from panora_sdk import Panora @@ -889,7 +760,6 @@ s = Panora( api_key="", ) - res = s.hello() if res is not None: @@ -914,18 +784,16 @@ s = Panora( api_key="", ) - res = s.filestorage.files.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` diff --git a/RELEASES.md b/RELEASES.md index 73d9f3e..fdbad60 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -76,4 +76,14 @@ Based on: ### Generated - [python v0.7.0] . ### Releases -- [PyPI v0.7.0] https://pypi.org/project/panora-sdk/0.7.0 - . \ No newline at end of file +- [PyPI v0.7.0] https://pypi.org/project/panora-sdk/0.7.0 - . + +## 2024-11-18 18:12:32 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.440.2 (2.460.1) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v0.8.0] . +### Releases +- [PyPI v0.8.0] https://pypi.org/project/panora-sdk/0.8.0 - . \ No newline at end of file diff --git a/USAGE.md b/USAGE.md index 6c121de..affb70d 100644 --- a/USAGE.md +++ b/USAGE.md @@ -7,7 +7,6 @@ s = Panora( api_key="", ) - res = s.hello() if res is not None: diff --git a/codeSamples.yaml b/codeSamples.yaml index b942789..6502f32 100644 --- a/codeSamples.yaml +++ b/codeSamples.yaml @@ -3,11 +3,11 @@ info: title: CodeSamples overlay for python target version: 0.0.0 actions: - - target: $["paths"]["/webhooks/{id}"]["put"] + - target: $["paths"]["/"]["get"] update: x-codeSamples: - lang: python - label: updateStatus + label: hello source: |- from panora_sdk import Panora @@ -15,17 +15,16 @@ actions: api_key="", ) - - res = s.webhooks.update_status(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") + res = s.hello() if res is not None: # handle response pass - - target: $["paths"]["/ticketing/collections"]["get"] + - target: $["paths"]["/accounting/accounts"]["get"] update: x-codeSamples: - lang: python - label: listTicketingCollections + label: listAccountingAccounts source: |- from panora_sdk import Panora @@ -33,21 +32,20 @@ actions: api_key="", ) - - res = s.ticketing.collections.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.accounts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/crm/engagements"]["get"] + - target: $["paths"]["/accounting/accounts"]["post"] update: x-codeSamples: - lang: python - label: listCrmEngagements + label: createAccountingAccount source: |- from panora_sdk import Panora @@ -55,21 +53,28 @@ actions: api_key="", ) - - res = s.crm.engagements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.accounts.create(x_connection_token="", unified_accounting_account_input={ + "name": "Cash", + "description": "Main cash account for daily operations", + "classification": "Asset", + "type": "Current Asset", + "status": "Active", + "current_balance": 10000, + "currency": "USD", + "account_number": "1000", + "parent_account": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": {}, + }, remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/passthrough/{retryId}"]["get"] + # handle response + pass + - target: $["paths"]["/accounting/accounts/{id}"]["get"] update: x-codeSamples: - lang: python - label: getRetriedRequestResponse + label: retrieveAccountingAccount source: |- from panora_sdk import Panora @@ -77,15 +82,16 @@ actions: api_key="", ) + res = s.accounting.accounts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - s.passthrough.retryid.get_retried_request_response(retry_id="") - - # Use the SDK ... - - target: $["paths"]["/hris/groups"]["get"] + if res is not None: + # handle response + pass + - target: $["paths"]["/accounting/addresses"]["get"] update: x-codeSamples: - lang: python - label: listHrisGroups + label: listAccountingAddress source: |- from panora_sdk import Panora @@ -93,105 +99,58 @@ actions: api_key="", ) - - res = s.hris.groups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.addresses.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ats/interviews"]["post"] + - target: $["paths"]["/accounting/addresses/{id}"]["get"] update: x-codeSamples: - lang: python - label: createAtsInterview + label: retrieveAccountingAddress source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ats.interviews.create(x_connection_token="", unified_ats_interview_input={ - "status": "SCHEDULED", - "application_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "job_interview_stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "organized_by": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "interviewers": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "location": "San Francisco", - "start_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "end_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_updated_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.accounting.addresses.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/activities"]["post"] + - target: $["paths"]["/accounting/attachments"]["get"] update: x-codeSamples: - lang: python - label: createAtsActivity + label: listAccountingAttachments source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ats.activities.create(x_connection_token="", unified_ats_activity_input={ - "activity_type": "NOTE", - "subject": "Email subject", - "body": "Dear Diana, I love you", - "visibility": "PUBLIC", - "candidate_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.accounting.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/companyinfos/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingCompanyInfo - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.companyinfos.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + while True: + # handle items - if res is not None: - # handle response - pass - - target: $["paths"]["/sync/resync"]["post"] + res = res.next() + if res is None: + break + - target: $["paths"]["/accounting/attachments"]["post"] update: x-codeSamples: - lang: python - label: resync + label: createAccountingAttachment source: |- from panora_sdk import Panora @@ -199,17 +158,21 @@ actions: api_key="", ) - - res = s.sync.resync() + res = s.accounting.attachments.create(x_connection_token="", unified_accounting_attachment_input={ + "file_name": "invoice.pdf", + "file_url": "https://example.com/files/invoice.pdf", + "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": {}, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/marketingautomation/events/{id}"]["get"] + - target: $["paths"]["/accounting/attachments/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveMarketingautomationEvent + label: retrieveAccountingAttachment source: |- from panora_sdk import Panora @@ -217,17 +180,16 @@ actions: api_key="", ) - - res = s.marketingautomation.events.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/trackingcategories/{id}"]["get"] + - target: $["paths"]["/accounting/balancesheets"]["get"] update: x-codeSamples: - lang: python - label: retrieveAccountingTrackingCategory + label: listAccountingBalanceSheets source: |- from panora_sdk import Panora @@ -235,17 +197,20 @@ actions: api_key="", ) - - res = s.accounting.trackingcategories.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.balancesheets.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/emails/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/accounting/balancesheets/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveMarketingautomationEmail + label: retrieveAccountingBalanceSheet source: |- from panora_sdk import Panora @@ -253,17 +218,16 @@ actions: api_key="", ) - - res = s.marketingautomation.emails.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.balancesheets.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ticketing/comments/{id}"]["get"] + - target: $["paths"]["/accounting/cashflowstatements"]["get"] update: x-codeSamples: - lang: python - label: retrieveTicketingComment + label: listAccountingCashflowStatement source: |- from panora_sdk import Panora @@ -271,47 +235,37 @@ actions: api_key="", ) - - res = s.ticketing.comments.retrieve(x_connection_token="", id="") + res = s.accounting.cashflowstatements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/ats/attachments"]["post"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/accounting/cashflowstatements/{id}"]["get"] update: x-codeSamples: - lang: python - label: createAtsAttachment + label: retrieveAccountingCashflowStatement source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ats.attachments.create(x_connection_token="", unified_ats_attachment_input={ - "file_url": "https://example.com/file.pdf", - "file_name": "file.pdf", - "attachment_type": "RESUME", - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_modified_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "candidate_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.accounting.cashflowstatements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ecommerce/orders"]["get"] + - target: $["paths"]["/accounting/companyinfos"]["get"] update: x-codeSamples: - lang: python - label: listEcommerceOrders + label: listAccountingCompanyInfos source: |- from panora_sdk import Panora @@ -319,21 +273,20 @@ actions: api_key="", ) - - res = s.ecommerce.orders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.companyinfos.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ticketing/accounts/{id}"]["get"] + - target: $["paths"]["/accounting/companyinfos/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveTicketingAccount + label: retrieveAccountingCompanyInfo source: |- from panora_sdk import Panora @@ -341,17 +294,16 @@ actions: api_key="", ) - - res = s.ticketing.accounts.retrieve(x_connection_token="", id="") + res = s.accounting.companyinfos.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/sync/pull-frequencies"]["post"] + - target: $["paths"]["/accounting/contacts"]["get"] update: x-codeSamples: - lang: python - label: updatePullFrequency + label: listAccountingContacts source: |- from panora_sdk import Panora @@ -359,25 +311,20 @@ actions: api_key="", ) - - res = s.sync.update_pull_frequency(request={ - "crm": 1800, - "ats": 3600, - "hris": 7200, - "accounting": 14400, - "filestorage": 28800, - "ecommerce": 43200, - "ticketing": 86400, - }) + res = s.accounting.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/hris/timesheetentries/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/accounting/contacts"]["post"] update: x-codeSamples: - lang: python - label: retrieveHrisTimesheetentry + label: createAccountingContact source: |- from panora_sdk import Panora @@ -385,17 +332,27 @@ actions: api_key="", ) - - res = s.hris.timesheetentries.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.contacts.create(x_connection_token="", unified_accounting_contact_input={ + "name": "John Doe", + "is_supplier": True, + "is_customer": False, + "email_address": "john.doe@example.com", + "tax_number": "123456789", + "status": "Active", + "currency": "USD", + "remote_updated_at": "2024-06-15T12:00:00Z", + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": {}, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/departments"]["get"] + - target: $["paths"]["/accounting/contacts/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAtsDepartments + label: retrieveAccountingContact source: |- from panora_sdk import Panora @@ -403,21 +360,16 @@ actions: api_key="", ) - - res = s.ats.departments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/trackingcategories"]["get"] + # handle response + pass + - target: $["paths"]["/accounting/creditnotes"]["get"] update: x-codeSamples: - lang: python - label: listAccountingTrackingCategorys + label: listAccountingCreditNote source: |- from panora_sdk import Panora @@ -425,21 +377,20 @@ actions: api_key="", ) - - res = s.accounting.trackingcategories.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.creditnotes.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/hris/employees/{id}"]["get"] + - target: $["paths"]["/accounting/creditnotes/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveHrisEmployee + label: retrieveAccountingCreditNote source: |- from panora_sdk import Panora @@ -447,17 +398,16 @@ actions: api_key="", ) - - res = s.hris.employees.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.creditnotes.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/companyinfos"]["get"] + - target: $["paths"]["/accounting/expenses"]["get"] update: x-codeSamples: - lang: python - label: listAccountingCompanyInfos + label: listAccountingExpense source: |- from panora_sdk import Panora @@ -465,1673 +415,83 @@ actions: api_key="", ) - - res = s.accounting.companyinfos.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.expenses.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/filestorage/groups"]["get"] + - target: $["paths"]["/accounting/expenses"]["post"] update: x-codeSamples: - lang: python - label: listFilestorageGroup + label: createAccountingExpense source: |- + import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.filestorage.groups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ticketing/comments"]["post"] - update: - x-codeSamples: - - lang: python - label: createTicketingComment - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.comments.create(x_connection_token="", unified_ticketing_comment_input={ - "body": "Assigned to Eric !", - "html_body": "

Assigned to Eric !

", - "is_private": False, - "creator_type": "USER", - "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + res = s.accounting.expenses.create(x_connection_token="", unified_accounting_expense_input={ + "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "total_amount": 10000, + "sub_total": 9000, + "total_tax_amount": 1000, + "currency": "USD", + "exchange_rate": "1.2", + "memo": "Business lunch with client", + "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "attachments": [ + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "tracking_categories": [ "801f9ede-c698-4e66-a7fc-48d19eebaa4f", ], - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/crm/notes/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveCrmNote - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.notes.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/crm/users/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveCrmUser - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.users.retrieve(x_connection_token="", id="b008e199-eda9-4629-bd41-a01b6195864a", remote_data=True) - - if res is not None: - # handle response - pass - - target: $["paths"]["/filestorage/folders"]["post"] - update: - x-codeSamples: - - lang: python - label: createFilestorageFolder - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.filestorage.folders.create(x_connection_token="", unified_filestorage_folder_input={ - "name": "school", - "size": "2048", - "folder_url": "https://example.com/school", - "description": "All things school related", - "drive_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "parent_folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/linked_users"]["post"] - update: - x-codeSamples: - - lang: python - label: createLinkedUser - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.linked_users.create(request={ - "linked_user_origin_id": "id_1", - "alias": "acme", - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/hris/employments/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveHrisEmployment - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.employments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/phonenumbers/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingPhonenumber - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.phonenumbers.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/contacts"]["post"] - update: - x-codeSamples: - - lang: python - label: createMarketingAutomationContact - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.contacts.create(x_connection_token="", unified_marketingautomation_contact_input={}, remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ats/attachments/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAtsAttachment - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/emails"]["get"] - update: - x-codeSamples: - - lang: python - label: listMarketingautomationEmails - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.emails.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/contacts/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingContact - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/crm/deals/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveCrmDeal - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.deals.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/hris/employerbenefits"]["get"] - update: - x-codeSamples: - - lang: python - label: listHrisEmployerBenefits - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.employerbenefits.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/invoices"]["get"] - update: - x-codeSamples: - - lang: python - label: listAccountingInvoice - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.invoices.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/vendorcredits/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingVendorCredit - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.vendorcredits.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/crm/deals"]["post"] - update: - x-codeSamples: - - lang: python - label: createCrmDeal - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.deals.create(x_connection_token="", unified_crm_deal_input={ - "name": "Huge Contract with Acme", - "description": "Contract with Sales Operations Team", - "amount": 1000, - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/messages/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveMarketingautomationMessage - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.messages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/sync/pull-frequencies"]["get"] - update: - x-codeSamples: - - lang: python - label: getPullFrequency - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.sync.get_pull_frequency() - - if res is not None: - # handle response - pass - - target: $["paths"]["/hris/locations"]["get"] - update: - x-codeSamples: - - lang: python - label: listHrisLocations - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.locations.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/creditnotes"]["get"] - update: - x-codeSamples: - - lang: python - label: listAccountingCreditNote - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.creditnotes.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ticketing/teams"]["get"] - update: - x-codeSamples: - - lang: python - label: listTicketingTeams - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.teams.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/crm/notes"]["get"] - update: - x-codeSamples: - - lang: python - label: listCrmNote - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.notes.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/crm/notes"]["post"] - update: - x-codeSamples: - - lang: python - label: createCrmNote - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.notes.create(x_connection_token="", unified_crm_note_input={ - "content": "My notes taken during the meeting", - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/hris/timesheetentries"]["get"] - update: - x-codeSamples: - - lang: python - label: listHrisTimesheetentries - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.timesheetentries.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/actions"]["get"] - update: - x-codeSamples: - - lang: python - label: listMarketingautomationAction - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.actions.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/contacts"]["get"] - update: - x-codeSamples: - - lang: python - label: listMarketingAutomationContacts - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/lists"]["post"] - update: - x-codeSamples: - - lang: python - label: createMarketingautomationList - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.lists.create(x_connection_token="", unified_marketingautomation_list_input={}) - - if res is not None: - # handle response - pass - - target: $["paths"]["/sync/status/{vertical}"]["get"] - update: - x-codeSamples: - - lang: python - label: status - source: |- - import panora_sdk - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - s.sync.status(vertical=panora_sdk.PathParamVertical.TICKETING) - - # Use the SDK ... - - target: $["paths"]["/linked_users/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveLinkedUser - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.linked_users.retrieve(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") - - if res is not None: - # handle response - pass - - target: $["paths"]["/hris/timeoffs"]["get"] - update: - x-codeSamples: - - lang: python - label: listHrisTimeoffs - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.timeoffs.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/actions/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveMarketingautomationAction - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.actions.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ats/candidates"]["get"] - update: - x-codeSamples: - - lang: python - label: listAtsCandidate - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.candidates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ats/offices/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAtsOffice - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.offices.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/taxrates/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingTaxRate - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.taxrates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/crm/tasks"]["get"] - update: - x-codeSamples: - - lang: python - label: listCrmTask - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.tasks.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/linked_users/fromRemoteId"]["get"] - update: - x-codeSamples: - - lang: python - label: remoteId - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.linked_users.remote_id(remote_id="id_1") - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/automations"]["post"] - update: - x-codeSamples: - - lang: python - label: createMarketingautomationAutomation - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.automations.create(x_connection_token="", unified_marketingautomation_automation_input={}, remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ats/users"]["get"] - update: - x-codeSamples: - - lang: python - label: listAtsUsers - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/addresses"]["get"] - update: - x-codeSamples: - - lang: python - label: listAccountingAddress - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.addresses.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/contacts"]["get"] - update: - x-codeSamples: - - lang: python - label: listAccountingContacts - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/purchaseorders"]["post"] - update: - x-codeSamples: - - lang: python - label: createAccountingPurchaseOrder - source: |- - import dateutil.parser - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.purchaseorders.create(x_connection_token="", unified_accounting_purchaseorder_input={ - "status": "Pending", - "issue_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "purchase_order_number": "PO-001", - "delivery_date": dateutil.parser.isoparse("2024-07-15T12:00:00Z"), - "delivery_address": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "customer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "vendor": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "memo": "Purchase order for Q3 inventory", - "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "total_amount": 100000, - "currency": "USD", - "exchange_rate": "1.2", - "tracking_categories": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "line_items": [ - { - "name": "Net Income", - "value": 100000, - "type": "Operating Activities", - "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_id": "report_item_1234", - "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - }, - ], - "field_mappings": {}, - }, remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ticketing/tags"]["get"] - update: - x-codeSamples: - - lang: python - label: listTicketingTags - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.tags.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/crm/deals"]["get"] - update: - x-codeSamples: - - lang: python - label: listCrmDeals - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.deals.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/field_mappings/attributes"]["get"] - update: - x-codeSamples: - - lang: python - label: getFieldMappings - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - s.field_mappings.get_field_mappings() - - # Use the SDK ... - - target: $["paths"]["/hris/dependents"]["get"] - update: - x-codeSamples: - - lang: python - label: listHrisDependents - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.dependents.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/hris/payrollruns"]["get"] - update: - x-codeSamples: - - lang: python - label: listHrisPayrollRuns - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.payrollruns.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ats/interviews/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAtsInterview - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.interviews.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/accounts/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingAccount - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.accounts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ticketing/users"]["get"] - update: - x-codeSamples: - - lang: python - label: listTicketingUsers - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/hris/benefits/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveHrisBenefit - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.benefits.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/templates"]["get"] - update: - x-codeSamples: - - lang: python - label: listMarketingautomationTemplates - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.templates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/contacts"]["post"] - update: - x-codeSamples: - - lang: python - label: createAccountingContact - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.contacts.create(x_connection_token="", unified_accounting_contact_input={ - "name": "John Doe", - "is_supplier": True, - "is_customer": False, - "email_address": "john.doe@example.com", - "tax_number": "123456789", - "status": "Active", - "currency": "USD", - "remote_updated_at": "2024-06-15T12:00:00Z", - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": {}, - }, remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/expenses/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingExpense - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.expenses.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/rag/query"]["post"] - update: - x-codeSamples: - - lang: python - label: query - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.rag.query.query(x_connection_token="", query_body={ - "query": "When does Panora incorporated?", - "top_k": 3, - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ticketing/attachments"]["post"] - update: - x-codeSamples: - - lang: python - label: createTicketingAttachment - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.attachments.create(x_connection_token="", unified_ticketing_attachment_input={ - "file_name": "features_planning.pdf", - "file_url": "https://example.com/features_planning.pdf", - "uploader": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "comment_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/crm/companies"]["get"] - update: - x-codeSamples: - - lang: python - label: listCrmCompany - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.companies.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/linked_users/batch"]["post"] - update: - x-codeSamples: - - lang: python - label: importBatch - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.linked_users.import_batch(request={ - "linked_user_origin_ids": [ - "id_1", - ], - "alias": "acme", - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/hris/employees"]["get"] - update: - x-codeSamples: - - lang: python - label: listHrisEmployees - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.employees.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ecommerce/products"]["get"] - update: - x-codeSamples: - - lang: python - label: listEcommerceProducts - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ecommerce.products.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ticketing/contacts/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveTicketingContact - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.contacts.retrieve(x_connection_token="", id="") - - if res is not None: - # handle response - pass - - target: $["paths"]["/crm/stages/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveCrmStage - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.crm.stages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ats/departments/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAtsDepartment - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.departments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/balancesheets/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveAccountingBalanceSheet - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.accounting.balancesheets.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/webhooks"]["post"] - update: - x-codeSamples: - - lang: python - label: createWebhookPublic - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.webhooks.create(request={ - "url": "https://acme.com/webhook_receiver", - "description": "Webhook to receive connection events", - "scope": [ - "connection.created", - ], - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ticketing/users/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveTicketingUser - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/projects"]["post"] - update: - x-codeSamples: - - lang: python - label: createProject - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.projects.create(request={ - "name": "Project Name", - "id_organization": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "id_user": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - }) - - if res is not None: - # handle response - pass - - target: $["paths"]["/hris/employeepayrollruns/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveHrisEmployeePayrollRun - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.employeepayrollruns.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/automations/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveMarketingautomationAutomation - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.automations.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ats/activities"]["get"] - update: - x-codeSamples: - - lang: python - label: listAtsActivity - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.activities.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ats/applications"]["get"] - update: - x-codeSamples: - - lang: python - label: listAtsApplication - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.applications.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/filestorage/files"]["get"] - update: - x-codeSamples: - - lang: python - label: listFilestorageFile - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.filestorage.files.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ticketing/tickets"]["get"] - update: - x-codeSamples: - - lang: python - label: listTicketingTicket - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.tickets.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ticketing/contacts"]["get"] - update: - x-codeSamples: - - lang: python - label: listTicketingContacts - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ticketing.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/templates"]["post"] - update: - x-codeSamples: - - lang: python - label: createMarketingautomationTemplate - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.marketingautomation.templates.create(x_connection_token="", unified_marketingautomation_template_input={}) + "line_items": [ + { + "name": "Net Income", + "value": 100000, + "type": "Operating Activities", + "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "remote_id": "report_item_1234", + "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + }, + ], + "field_mappings": {}, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/candidates"]["post"] + - target: $["paths"]["/accounting/expenses/{id}"]["get"] update: x-codeSamples: - lang: python - label: createAtsCandidate + label: retrieveAccountingExpense source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ats.candidates.create(x_connection_token="", unified_ats_candidate_input={ - "first_name": "Joe", - "last_name": "Doe", - "company": "Acme", - "title": "Analyst", - "locations": "New York", - "is_private": False, - "email_reachable": True, - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_modified_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "last_interaction_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "attachments": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "applications": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "tags": [ - "tag_1", - "tag_2", - ], - "urls": [ - { - "url": "mywebsite.com", - "url_type": "WEBSITE", - }, - ], - "phone_numbers": [ - { - "phone_number": "+33660688899", - "phone_type": "WORK", - }, - ], - "email_addresses": [ - { - "email_address": "joedoe@gmail.com", - "email_address_type": "WORK", - }, - ], - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.accounting.expenses.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/webhooks/{id}"]["delete"] + - target: $["paths"]["/accounting/incomestatements"]["get"] update: x-codeSamples: - lang: python - label: delete + label: listAccountingIncomeStatement source: |- from panora_sdk import Panora @@ -2139,17 +499,20 @@ actions: api_key="", ) - - res = s.webhooks.delete(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") + res = s.accounting.incomestatements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/crm/contacts/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/accounting/incomestatements/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveCrmContact + label: retrieveAccountingIncomeStatement source: |- from panora_sdk import Panora @@ -2157,17 +520,16 @@ actions: api_key="", ) - - res = s.crm.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.incomestatements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/scorecards/{id}"]["get"] + - target: $["paths"]["/accounting/invoices"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsScorecard + label: listAccountingInvoice source: |- from panora_sdk import Panora @@ -2175,35 +537,73 @@ actions: api_key="", ) - - res = s.ats.scorecards.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.invoices.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/attachments/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/accounting/invoices"]["post"] update: x-codeSamples: - lang: python - label: retrieveAccountingAttachment + label: createAccountingInvoice source: |- + import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.accounting.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.invoices.create(x_connection_token="", unified_accounting_invoice_input={ + "type": "Sales", + "number": "INV-001", + "issue_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "due_date": dateutil.parser.isoparse("2024-07-15T12:00:00Z"), + "paid_on_date": dateutil.parser.isoparse("2024-07-10T12:00:00Z"), + "memo": "Payment for services rendered", + "currency": "USD", + "exchange_rate": "1.2", + "total_discount": 1000, + "sub_total": 10000, + "status": "Paid", + "total_tax_amount": 1000, + "total_amount": 11000, + "balance": 0, + "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "tracking_categories": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + "line_items": [ + { + "name": "Net Income", + "value": 100000, + "type": "Operating Activities", + "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "remote_id": "report_item_1234", + "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + }, + ], + "field_mappings": {}, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/purchaseorders"]["get"] + - target: $["paths"]["/accounting/invoices/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAccountingPurchaseOrder + label: retrieveAccountingInvoice source: |- from panora_sdk import Panora @@ -2211,21 +611,16 @@ actions: api_key="", ) - - res = s.accounting.purchaseorders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.invoices.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/hris/bankinfos"]["get"] + # handle response + pass + - target: $["paths"]["/accounting/items"]["get"] update: x-codeSamples: - lang: python - label: listHrisBankInfo + label: listAccountingItem source: |- from panora_sdk import Panora @@ -2233,39 +628,20 @@ actions: api_key="", ) - - res = s.hris.bankinfos.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.items.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/hris/timeoffbalances/{id}"]["get"] - update: - x-codeSamples: - - lang: python - label: retrieveHrisTimeoffbalance - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.hris.timeoffbalances.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/contacts/{id}"]["get"] + - target: $["paths"]["/accounting/items/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveMarketingAutomationContact + label: retrieveAccountingItem source: |- from panora_sdk import Panora @@ -2273,17 +649,16 @@ actions: api_key="", ) - - res = s.marketingautomation.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.items.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/marketingautomation/users"]["get"] + - target: $["paths"]["/accounting/journalentries"]["get"] update: x-codeSamples: - lang: python - label: listMarketingAutomationUsers + label: listAccountingJournalEntry source: |- from panora_sdk import Panora @@ -2291,21 +666,20 @@ actions: api_key="", ) - - res = s.marketingautomation.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.journalentries.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/accounting/expenses"]["post"] + - target: $["paths"]["/accounting/journalentries"]["post"] update: x-codeSamples: - lang: python - label: createAccountingExpense + label: createAccountingJournalEntry source: |- import dateutil.parser from panora_sdk import Panora @@ -2314,21 +688,26 @@ actions: api_key="", ) - - res = s.accounting.expenses.create(x_connection_token="", unified_accounting_expense_input={ + res = s.accounting.journalentries.create(x_connection_token="", unified_accounting_journalentry_input={ "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "total_amount": 10000, - "sub_total": 9000, - "total_tax_amount": 1000, + "payments": [ + "payment1", + "payment2", + ], + "applied_payments": [ + "appliedPayment1", + "appliedPayment2", + ], + "memo": "Monthly expense journal entry", "currency": "USD", "exchange_rate": "1.2", - "memo": "Business lunch with client", - "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "id_acc_company_info": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "journal_number": "JE-001", "tracking_categories": [ "801f9ede-c698-4e66-a7fc-48d19eebaa4f", ], + "id_acc_accounting_period": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "posting_status": "Posted", "line_items": [ { "name": "Net Income", @@ -2348,11 +727,11 @@ actions: if res is not None: # handle response pass - - target: $["paths"]["/accounting/incomestatements"]["get"] + - target: $["paths"]["/accounting/journalentries/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAccountingIncomeStatement + label: retrieveAccountingJournalEntry source: |- from panora_sdk import Panora @@ -2360,52 +739,83 @@ actions: api_key="", ) + res = s.accounting.journalentries.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - res = s.accounting.incomestatements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + if res is not None: + # handle response + pass + - target: $["paths"]["/accounting/payments"]["get"] + update: + x-codeSamples: + - lang: python + label: listAccountingPayment + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) + + res = s.accounting.payments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/crm/tasks"]["post"] + - target: $["paths"]["/accounting/payments"]["post"] update: x-codeSamples: - lang: python - label: createCrmTask + label: createAccountingPayment source: |- + import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.crm.tasks.create(x_connection_token="", unified_crm_task_input={ - "subject": "Answer customers", - "content": "Prepare email campaign", - "status": "PENDING", - "due_date": "2024-10-01T12:00:00Z", - "finished_date": "2024-10-01T12:00:00Z", - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }) + res = s.accounting.payments.create(x_connection_token="", unified_accounting_payment_input={ + "invoice_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "currency": "USD", + "exchange_rate": "1.2", + "total_amount": 10000, + "type": "Credit Card", + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "tracking_categories": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + "line_items": [ + { + "name": "Net Income", + "value": 100000, + "type": "Operating Activities", + "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "remote_id": "report_item_1234", + "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + }, + ], + "field_mappings": {}, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/marketingautomation/users/{id}"]["get"] + - target: $["paths"]["/accounting/payments/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveMarketingAutomationUser + label: retrieveAccountingPayment source: |- from panora_sdk import Panora @@ -2413,39 +823,16 @@ actions: api_key="", ) - - res = s.marketingautomation.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.payments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/rejectreasons"]["get"] - update: - x-codeSamples: - - lang: python - label: listAtsRejectReasons - source: |- - from panora_sdk import Panora - - s = Panora( - api_key="", - ) - - - res = s.ats.rejectreasons.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/balancesheets"]["get"] + - target: $["paths"]["/accounting/phonenumbers"]["get"] update: x-codeSamples: - lang: python - label: listAccountingBalanceSheets + label: listAccountingPhonenumber source: |- from panora_sdk import Panora @@ -2453,21 +840,20 @@ actions: api_key="", ) - - res = s.accounting.balancesheets.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.phonenumbers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/filestorage/files"]["post"] + - target: $["paths"]["/accounting/phonenumbers/{id}"]["get"] update: x-codeSamples: - lang: python - label: createFilestorageFile + label: retrieveAccountingPhonenumber source: |- from panora_sdk import Panora @@ -2475,29 +861,16 @@ actions: api_key="", ) - - res = s.filestorage.files.create(x_connection_token="", unified_filestorage_file_input={ - "name": "my_paris_photo.png", - "file_url": "https://example.com/my_paris_photo.png", - "mime_type": "application/pdf", - "size": "1024", - "folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.accounting.phonenumbers.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/jobs"]["get"] + - target: $["paths"]["/accounting/purchaseorders"]["get"] update: x-codeSamples: - lang: python - label: listAtsJob + label: listAccountingPurchaseOrder source: |- from panora_sdk import Panora @@ -2505,39 +878,69 @@ actions: api_key="", ) - - res = s.ats.jobs.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.purchaseorders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ecommerce/products/{id}"]["get"] + - target: $["paths"]["/accounting/purchaseorders"]["post"] update: x-codeSamples: - lang: python - label: retrieveEcommerceProduct + label: createAccountingPurchaseOrder source: |- + import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ecommerce.products.retrieve(x_connection_token="", id="") + res = s.accounting.purchaseorders.create(x_connection_token="", unified_accounting_purchaseorder_input={ + "status": "Pending", + "issue_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "purchase_order_number": "PO-001", + "delivery_date": dateutil.parser.isoparse("2024-07-15T12:00:00Z"), + "delivery_address": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "customer": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "vendor": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "memo": "Purchase order for Q3 inventory", + "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "total_amount": 100000, + "currency": "USD", + "exchange_rate": "1.2", + "tracking_categories": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "line_items": [ + { + "name": "Net Income", + "value": 100000, + "type": "Operating Activities", + "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "remote_id": "report_item_1234", + "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + }, + ], + "field_mappings": {}, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ecommerce/customers/{id}"]["get"] + - target: $["paths"]["/accounting/purchaseorders/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveEcommerceCustomer + label: retrieveAccountingPurchaseOrder source: |- from panora_sdk import Panora @@ -2545,17 +948,16 @@ actions: api_key="", ) - - res = s.ecommerce.customers.retrieve(x_connection_token="", id="") + res = s.accounting.purchaseorders.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/filestorage/users"]["get"] + - target: $["paths"]["/accounting/taxrates"]["get"] update: x-codeSamples: - lang: python - label: listFilestorageUsers + label: listAccountingTaxRate source: |- from panora_sdk import Panora @@ -2563,21 +965,20 @@ actions: api_key="", ) - - res = s.filestorage.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.taxrates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ats/tags/{id}"]["get"] + - target: $["paths"]["/accounting/taxrates/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsTag + label: retrieveAccountingTaxRate source: |- from panora_sdk import Panora @@ -2585,17 +986,16 @@ actions: api_key="", ) - - res = s.ats.tags.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.taxrates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/items"]["get"] + - target: $["paths"]["/accounting/trackingcategories"]["get"] update: x-codeSamples: - lang: python - label: listAccountingItem + label: listAccountingTrackingCategorys source: |- from panora_sdk import Panora @@ -2603,45 +1003,37 @@ actions: api_key="", ) - - res = s.accounting.items.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.trackingcategories.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/field_mappings/define"]["post"] + - target: $["paths"]["/accounting/trackingcategories/{id}"]["get"] update: x-codeSamples: - lang: python - label: definitions + label: retrieveAccountingTrackingCategory source: |- - import panora_sdk from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.field_mappings.definitions(request={ - "object_type_owner": panora_sdk.ObjectTypeOwner.COMPANY, - "name": "fav_dish", - "description": "My favorite dish", - "data_type": panora_sdk.DataType.STRING, - }) + res = s.accounting.trackingcategories.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ecommerce/customers"]["get"] + - target: $["paths"]["/accounting/transactions"]["get"] update: x-codeSamples: - lang: python - label: listEcommerceCustomers + label: listAccountingTransaction source: |- from panora_sdk import Panora @@ -2649,21 +1041,20 @@ actions: api_key="", ) - - res = s.ecommerce.customers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.transactions.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/marketingautomation/campaigns/{id}"]["get"] + - target: $["paths"]["/accounting/transactions/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveMarketingautomationCampaign + label: retrieveAccountingTransaction source: |- from panora_sdk import Panora @@ -2671,17 +1062,16 @@ actions: api_key="", ) - - res = s.marketingautomation.campaigns.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.accounting.transactions.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/scorecards"]["get"] + - target: $["paths"]["/accounting/vendorcredits"]["get"] update: x-codeSamples: - lang: python - label: listAtsScorecard + label: listAccountingVendorCredit source: |- from panora_sdk import Panora @@ -2689,21 +1079,20 @@ actions: api_key="", ) - - res = s.ats.scorecards.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.vendorcredits.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/hris/employeepayrollruns"]["get"] + - target: $["paths"]["/accounting/vendorcredits/{id}"]["get"] update: x-codeSamples: - lang: python - label: listHrisEmployeePayrollRun + label: retrieveAccountingVendorCredit source: |- from panora_sdk import Panora @@ -2711,21 +1100,16 @@ actions: api_key="", ) - - res = s.hris.employeepayrollruns.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.accounting.vendorcredits.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ecommerce/fulfillments/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/auth/login"]["post"] update: x-codeSamples: - lang: python - label: retrieveEcommerceFulfillment + label: signIn source: |- from panora_sdk import Panora @@ -2733,17 +1117,18 @@ actions: api_key="", ) + s.auth.login.sign_in(request={ + "id_user": "", + "email": "Stanford_Rice@hotmail.com", + "password_hash": "", + }) - res = s.ecommerce.fulfillments.retrieve(x_connection_token="", id="") - - if res is not None: - # handle response - pass - - target: $["paths"]["/ticketing/attachments"]["get"] + # Use the SDK ... + - target: $["paths"]["/connections"]["get"] update: x-codeSamples: - lang: python - label: listTicketingAttachments + label: listConnections source: |- from panora_sdk import Panora @@ -2751,21 +1136,16 @@ actions: api_key="", ) - - res = s.ticketing.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.connections.list() if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/crm/companies/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/crm/companies"]["get"] update: x-codeSamples: - lang: python - label: retrieveCrmCompany + label: listCrmCompany source: |- from panora_sdk import Panora @@ -2773,17 +1153,20 @@ actions: api_key="", ) - - res = s.crm.companies.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.crm.companies.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/hris/timeoffs/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/crm/companies"]["post"] update: x-codeSamples: - lang: python - label: retrieveHrisTimeoff + label: createCrmCompany source: |- from panora_sdk import Panora @@ -2791,17 +1174,49 @@ actions: api_key="", ) - - res = s.hris.timeoffs.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.crm.companies.create(x_connection_token="", unified_crm_company_input={ + "name": "Acme", + "industry": "ACCOUNTING", + "number_of_employees": 10, + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "email_addresses": [ + { + "email_address": "acme@gmail.com", + "email_address_type": "WORK", + }, + ], + "addresses": [ + { + "street_1": "5th Avenue", + "street_2": "Street 2", + "city": "New York", + "state": "NY", + "postal_code": "10001", + "country": "USA", + "address_type": "WORK", + "owner_type": "", + }, + ], + "phone_numbers": [ + { + "phone_number": "+33660606067", + "phone_type": "WORK", + }, + ], + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ticketing/attachments/{id}"]["get"] + - target: $["paths"]["/crm/companies/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveTicketingAttachment + label: retrieveCrmCompany source: |- from panora_sdk import Panora @@ -2809,17 +1224,16 @@ actions: api_key="", ) - - res = s.ticketing.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.crm.companies.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/filestorage/folders"]["get"] + - target: $["paths"]["/crm/contacts"]["get"] update: x-codeSamples: - lang: python - label: listFilestorageFolder + label: listCrmContacts source: |- from panora_sdk import Panora @@ -2827,66 +1241,55 @@ actions: api_key="", ) - - res = s.filestorage.folders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.crm.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ticketing/tickets"]["post"] + - target: $["paths"]["/crm/contacts"]["post"] update: x-codeSamples: - lang: python - label: createTicketingTicket + label: createCrmContact source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ticketing.tickets.create(x_connection_token="", unified_ticketing_ticket_input={ - "name": "Customer Service Inquiry", - "status": "OPEN", - "description": "Help customer", - "due_date": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "type": "BUG", - "parent_ticket": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "collections": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "tags": [ - "my_tag", - "urgent_tag", + res = s.crm.contacts.create(x_connection_token="", unified_crm_contact_input={ + "first_name": "John", + "last_name": "Doe", + "email_addresses": [ + { + "email_address": "Loyal79@yahoo.com", + "email_address_type": "", + }, ], - "completed_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "priority": "HIGH", - "assigned_to": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "phone_numbers": [ + { + "phone_number": "307-857-9320", + "phone_type": "", + }, ], - "comment": { - "body": "Assigned to Eric !", - "html_body": "

Assigned to Eric !

", - "is_private": False, - "creator_type": "USER", - "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "attachments": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - }, - "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "attachments": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "addresses": [ + { + "street_1": "5th Avenue", + "street_2": "Street 2", + "city": "Anytown", + "state": "CA", + "postal_code": "10001", + "country": "USA", + "address_type": "PERSONAL", + "owner_type": "", + }, ], + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": { "fav_dish": "broccoli", "fav_color": "red", @@ -2896,11 +1299,11 @@ actions: if res is not None: # handle response pass - - target: $["paths"]["/hris/paygroups"]["get"] + - target: $["paths"]["/crm/contacts/{id}"]["get"] update: x-codeSamples: - lang: python - label: listHrisPaygroups + label: retrieveCrmContact source: |- from panora_sdk import Panora @@ -2908,21 +1311,37 @@ actions: api_key="", ) + res = s.crm.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + + if res is not None: + # handle response + pass + - target: $["paths"]["/crm/deals"]["get"] + update: + x-codeSamples: + - lang: python + label: listCrmDeals + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) - res = s.hris.paygroups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.crm.deals.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/marketingautomation/campaigns"]["post"] + - target: $["paths"]["/crm/deals"]["post"] update: x-codeSamples: - lang: python - label: createMarketingautomationCampaign + label: createCrmDeal source: |- from panora_sdk import Panora @@ -2930,17 +1349,27 @@ actions: api_key="", ) - - res = s.marketingautomation.campaigns.create(x_connection_token="", unified_marketingautomation_campaign_input={}, remote_data=False) + res = s.crm.deals.create(x_connection_token="", unified_crm_deal_input={ + "name": "Huge Contract with Acme", + "description": "Contract with Sales Operations Team", + "amount": 1000, + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, + }) if res is not None: # handle response pass - - target: $["paths"]["/crm/stages"]["get"] + - target: $["paths"]["/crm/deals/{id}"]["get"] update: x-codeSamples: - lang: python - label: listCrmStages + label: retrieveCrmDeal source: |- from panora_sdk import Panora @@ -2948,21 +1377,16 @@ actions: api_key="", ) - - res = s.crm.stages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.crm.deals.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/automations"]["get"] + # handle response + pass + - target: $["paths"]["/crm/engagements"]["get"] update: x-codeSamples: - lang: python - label: listMarketingautomationAutomations + label: listCrmEngagements source: |- from panora_sdk import Panora @@ -2970,39 +1394,54 @@ actions: api_key="", ) - - res = s.marketingautomation.automations.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.crm.engagements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ecommerce/orders/{id}"]["get"] + - target: $["paths"]["/crm/engagements"]["post"] update: x-codeSamples: - lang: python - label: retrieveEcommerceOrder + label: createCrmEngagement source: |- + import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ecommerce.orders.retrieve(x_connection_token="", id="") + res = s.crm.engagements.create(x_connection_token="", unified_crm_engagement_input={ + "content": "Meeting call with CTO", + "direction": "INBOUND", + "subject": "Technical features planning", + "start_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), + "end_time": dateutil.parser.isoparse("2024-10-01T22:00:00Z"), + "type": "MEETING", + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "contacts": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/hris/paygroups/{id}"]["get"] + - target: $["paths"]["/crm/engagements/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveHrisPaygroup + label: retrieveCrmEngagement source: |- from panora_sdk import Panora @@ -3010,17 +1449,16 @@ actions: api_key="", ) - - res = s.hris.paygroups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.crm.engagements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/jobinterviewstages"]["get"] + - target: $["paths"]["/crm/notes"]["get"] update: x-codeSamples: - lang: python - label: listAtsJobInterviewStage + label: listCrmNote source: |- from panora_sdk import Panora @@ -3028,21 +1466,20 @@ actions: api_key="", ) - - res = s.ats.jobinterviewstages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.crm.notes.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/accounting/accounts"]["post"] + - target: $["paths"]["/crm/notes"]["post"] update: x-codeSamples: - lang: python - label: createAccountingAccount + label: createCrmNote source: |- from panora_sdk import Panora @@ -3050,82 +1487,43 @@ actions: api_key="", ) - - res = s.accounting.accounts.create(x_connection_token="", unified_accounting_account_input={ - "name": "Cash", - "description": "Main cash account for daily operations", - "classification": "Asset", - "type": "Current Asset", - "status": "Active", - "current_balance": 10000, - "currency": "USD", - "account_number": "1000", - "parent_account": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": {}, + res = s.crm.notes.create(x_connection_token="", unified_crm_note_input={ + "content": "My notes taken during the meeting", + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/journalentries"]["post"] + - target: $["paths"]["/crm/notes/{id}"]["get"] update: x-codeSamples: - lang: python - label: createAccountingJournalEntry + label: retrieveCrmNote source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.accounting.journalentries.create(x_connection_token="", unified_accounting_journalentry_input={ - "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "payments": [ - "payment1", - "payment2", - ], - "applied_payments": [ - "appliedPayment1", - "appliedPayment2", - ], - "memo": "Monthly expense journal entry", - "currency": "USD", - "exchange_rate": "1.2", - "id_acc_company_info": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "journal_number": "JE-001", - "tracking_categories": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "id_acc_accounting_period": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "posting_status": "Posted", - "line_items": [ - { - "name": "Net Income", - "value": 100000, - "type": "Operating Activities", - "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_id": "report_item_1234", - "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - }, - ], - "field_mappings": {}, - }, remote_data=False) + res = s.crm.notes.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/hris/payrollruns/{id}"]["get"] + - target: $["paths"]["/crm/stages"]["get"] update: x-codeSamples: - lang: python - label: retrieveHrisPayrollRun + label: listCrmStages source: |- from panora_sdk import Panora @@ -3133,17 +1531,37 @@ actions: api_key="", ) + res = s.crm.stages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + + if res is not None: + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/crm/stages/{id}"]["get"] + update: + x-codeSamples: + - lang: python + label: retrieveCrmStage + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) - res = s.hris.payrollruns.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.crm.stages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/rejectreasons/{id}"]["get"] + - target: $["paths"]["/crm/tasks"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsRejectReason + label: listCrmTask source: |- from panora_sdk import Panora @@ -3151,17 +1569,20 @@ actions: api_key="", ) - - res = s.ats.rejectreasons.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.crm.tasks.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/creditnotes/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/crm/tasks"]["post"] update: x-codeSamples: - lang: python - label: retrieveAccountingCreditNote + label: createCrmTask source: |- from panora_sdk import Panora @@ -3169,17 +1590,29 @@ actions: api_key="", ) - - res = s.accounting.creditnotes.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.crm.tasks.create(x_connection_token="", unified_crm_task_input={ + "subject": "Answer customers", + "content": "Prepare email campaign", + "status": "PENDING", + "due_date": "2024-10-01T12:00:00Z", + "finished_date": "2024-10-01T12:00:00Z", + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, + }) if res is not None: # handle response pass - - target: $["paths"]["/accounting/expenses"]["get"] + - target: $["paths"]["/crm/tasks/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAccountingExpense + label: retrieveCrmTask source: |- from panora_sdk import Panora @@ -3187,21 +1620,16 @@ actions: api_key="", ) - - res = s.accounting.expenses.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.crm.tasks.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/payments"]["get"] + # handle response + pass + - target: $["paths"]["/crm/users"]["get"] update: x-codeSamples: - lang: python - label: listAccountingPayment + label: listCrmUsers source: |- from panora_sdk import Panora @@ -3209,21 +1637,20 @@ actions: api_key="", ) - - res = s.accounting.payments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.crm.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ecommerce/products"]["post"] + - target: $["paths"]["/crm/users/{id}"]["get"] update: x-codeSamples: - lang: python - label: createEcommerceProduct + label: retrieveCrmUser source: |- from panora_sdk import Panora @@ -3231,33 +1658,16 @@ actions: api_key="", ) - - res = s.ecommerce.products.create(x_connection_token="", unified_ecommerce_product_input={ - "product_url": "https://product_url/tee", - "product_type": "teeshirt", - "product_status": "ACTIVE", - "images_urls": [ - "https://myproduct/image", - ], - "description": "best tee ever", - "vendor": "vendor_extern", - "variants": [ - {}, - ], - "tags": [ - "tag_1", - ], - "field_mappings": {}, - }, remote_data=False) + res = s.crm.users.retrieve(x_connection_token="", id="b008e199-eda9-4629-bd41-a01b6195864a", remote_data=True) if res is not None: # handle response pass - - target: $["paths"]["/accounting/vendorcredits"]["get"] + - target: $["paths"]["/ecommerce/customers"]["get"] update: x-codeSamples: - lang: python - label: listAccountingVendorCredit + label: listEcommerceCustomers source: |- from panora_sdk import Panora @@ -3265,21 +1675,20 @@ actions: api_key="", ) - - res = s.accounting.vendorcredits.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ecommerce.customers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ticketing/comments"]["get"] + - target: $["paths"]["/ecommerce/customers/{id}"]["get"] update: x-codeSamples: - lang: python - label: listTicketingComments + label: retrieveEcommerceCustomer source: |- from panora_sdk import Panora @@ -3287,21 +1696,16 @@ actions: api_key="", ) - - res = s.ticketing.comments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ecommerce.customers.retrieve(x_connection_token="", id="") if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/linked_users"]["get"] + # handle response + pass + - target: $["paths"]["/ecommerce/fulfillments"]["get"] update: x-codeSamples: - lang: python - label: listLinkedUsers + label: listEcommerceFulfillments source: |- from panora_sdk import Panora @@ -3309,17 +1713,20 @@ actions: api_key="", ) - - res = s.linked_users.list() + res = s.ecommerce.fulfillments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/projects"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/ecommerce/fulfillments/{id}"]["get"] update: x-codeSamples: - lang: python - label: getProjects + label: retrieveEcommerceFulfillment source: |- from panora_sdk import Panora @@ -3327,17 +1734,16 @@ actions: api_key="", ) - - res = s.projects.get_projects() + res = s.ecommerce.fulfillments.retrieve(x_connection_token="", id="") if res is not None: # handle response pass - - target: $["paths"]["/hris/timeoffbalances"]["get"] + - target: $["paths"]["/ecommerce/orders"]["get"] update: x-codeSamples: - lang: python - label: listHrisTimeoffbalances + label: listEcommerceOrders source: |- from panora_sdk import Panora @@ -3345,43 +1751,63 @@ actions: api_key="", ) - - res = s.hris.timeoffbalances.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ecommerce.orders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/marketingautomation/lists"]["get"] + - target: $["paths"]["/ecommerce/orders"]["post"] update: x-codeSamples: - lang: python - label: listMarketingautomationLists + label: createEcommerceOrder source: |- + import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.marketingautomation.lists.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ecommerce.orders.create(x_connection_token="", unified_ecommerce_order_input={ + "order_status": "UNSHIPPED", + "order_number": "19823838833", + "payment_status": "SUCCESS", + "currency": "AUD", + "total_price": 300, + "total_discount": 10, + "total_shipping": 120, + "total_tax": 120, + "fulfillment_status": "PENDING", + "customer_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "items": [ + { + "name": "Net Income", + "value": 100000, + "type": "Operating Activities", + "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "remote_id": "12345", + "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), + "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), + }, + ], + "field_mappings": {}, + }, remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/journalentries/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/ecommerce/orders/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveAccountingJournalEntry + label: retrieveEcommerceOrder source: |- from panora_sdk import Panora @@ -3389,17 +1815,16 @@ actions: api_key="", ) - - res = s.accounting.journalentries.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ecommerce.orders.retrieve(x_connection_token="", id="") if res is not None: # handle response pass - - target: $["paths"]["/accounting/taxrates"]["get"] + - target: $["paths"]["/ecommerce/products"]["get"] update: x-codeSamples: - lang: python - label: listAccountingTaxRate + label: listEcommerceProducts source: |- from panora_sdk import Panora @@ -3407,73 +1832,53 @@ actions: api_key="", ) - - res = s.accounting.taxrates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ecommerce.products.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/hris/employees"]["post"] + - target: $["paths"]["/ecommerce/products"]["post"] update: x-codeSamples: - lang: python - label: createHrisEmployee + label: createEcommerceProduct source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.hris.employees.create(x_connection_token="", unified_hris_employee_input={ - "groups": [ - "Group1", - "Group2", + res = s.ecommerce.products.create(x_connection_token="", unified_ecommerce_product_input={ + "product_url": "https://product_url/tee", + "product_type": "teeshirt", + "product_status": "ACTIVE", + "images_urls": [ + "https://myproduct/image", ], - "locations": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "description": "best tee ever", + "vendor": "vendor_extern", + "variants": [ + {}, ], - "employee_number": "EMP001", - "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "first_name": "John", - "last_name": "Doe", - "preferred_name": "Johnny", - "display_full_name": "John Doe", - "username": "johndoe", - "work_email": "john.doe@company.com", - "personal_email": "john.doe@personal.com", - "mobile_phone_number": "+1234567890", - "employments": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "tags": [ + "tag_1", ], - "ssn": "123-45-6789", - "gender": "MALE", - "ethnicity": "AMERICAN_INDIAN_OR_ALASKA_NATIVE", - "marital_status": "Married", - "date_of_birth": dateutil.parser.isoparse("1990-01-01"), - "start_date": dateutil.parser.isoparse("2020-01-01"), - "employment_status": "ACTIVE", - "termination_date": dateutil.parser.isoparse("2025-01-01"), - "avatar_url": "https://example.com/avatar.jpg", - "manager_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": {}, - }) + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/hris/groups/{id}"]["get"] + - target: $["paths"]["/ecommerce/products/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveHrisGroup + label: retrieveEcommerceProduct source: |- from panora_sdk import Panora @@ -3481,17 +1886,16 @@ actions: api_key="", ) - - res = s.hris.groups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ecommerce.products.retrieve(x_connection_token="", id="") if res is not None: # handle response pass - - target: $["paths"]["/ats/applications/{id}"]["get"] + - target: $["paths"]["/events"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsApplication + label: getPanoraCoreEvents source: |- from panora_sdk import Panora @@ -3499,27 +1903,29 @@ actions: api_key="", ) - - res = s.ats.applications.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.events.get_panora_core_events() if res is not None: # handle response pass - - target: $["paths"]["/field_mappings/map"]["post"] + - target: $["paths"]["/field_mappings"]["post"] update: x-codeSamples: - lang: python - label: map + label: defineCustomField source: |- + import panora_sdk from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.field_mappings.map(request={ - "attribute_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + res = s.field_mappings.define_custom_field(request={ + "object_type_owner": panora_sdk.CustomFieldCreateDtoObjectTypeOwner.COMPANY, + "name": "my_favorite_dish", + "description": "Favorite Dish", + "data_type": panora_sdk.CustomFieldCreateDtoDataType.STRING, "source_custom_field_id": "id_1", "source_provider": "hubspot", "linked_user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", @@ -3528,11 +1934,11 @@ actions: if res is not None: # handle response pass - - target: $["paths"]["/ats/candidates/{id}"]["get"] + - target: $["paths"]["/field_mappings/attributes"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsCandidate + label: getFieldMappings source: |- from panora_sdk import Panora @@ -3540,35 +1946,37 @@ actions: api_key="", ) + s.field_mappings.get_field_mappings() - res = s.ats.candidates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/filestorage/groups/{id}"]["get"] + # Use the SDK ... + - target: $["paths"]["/field_mappings/define"]["post"] update: x-codeSamples: - lang: python - label: retrieveFilestorageGroup + label: definitions source: |- + import panora_sdk from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.filestorage.groups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.field_mappings.definitions(request={ + "object_type_owner": panora_sdk.ObjectTypeOwner.COMPANY, + "name": "fav_dish", + "description": "My favorite dish", + "data_type": panora_sdk.DataType.STRING, + }) if res is not None: # handle response pass - - target: $["paths"]["/webhooks"]["get"] + - target: $["paths"]["/field_mappings/entities"]["get"] update: x-codeSamples: - lang: python - label: listWebhooks + label: getFieldMappingsEntities source: |- from panora_sdk import Panora @@ -3576,17 +1984,36 @@ actions: api_key="", ) + s.field_mappings.get_field_mappings_entities() - res = s.webhooks.list() + # Use the SDK ... + - target: $["paths"]["/field_mappings/map"]["post"] + update: + x-codeSamples: + - lang: python + label: map + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) + + res = s.field_mappings.map(request={ + "attribute_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "source_custom_field_id": "id_1", + "source_provider": "hubspot", + "linked_user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + }) if res is not None: # handle response pass - - target: $["paths"]["/ticketing/teams/{id}"]["get"] + - target: $["paths"]["/field_mappings/values"]["get"] update: x-codeSamples: - lang: python - label: retrieveTicketingTeam + label: getFieldMappingValues source: |- from panora_sdk import Panora @@ -3594,17 +2021,14 @@ actions: api_key="", ) + s.field_mappings.get_field_mapping_values() - res = s.ticketing.teams.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/ats/offices"]["get"] + # Use the SDK ... + - target: $["paths"]["/filestorage/files"]["get"] update: x-codeSamples: - lang: python - label: listAtsOffice + label: listFilestorageFile source: |- from panora_sdk import Panora @@ -3612,75 +2036,49 @@ actions: api_key="", ) - - res = s.ats.offices.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.filestorage.files.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/accounting/invoices"]["post"] + - target: $["paths"]["/filestorage/files"]["post"] update: x-codeSamples: - lang: python - label: createAccountingInvoice + label: createFilestorageFile source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.accounting.invoices.create(x_connection_token="", unified_accounting_invoice_input={ - "type": "Sales", - "number": "INV-001", - "issue_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "due_date": dateutil.parser.isoparse("2024-07-15T12:00:00Z"), - "paid_on_date": dateutil.parser.isoparse("2024-07-10T12:00:00Z"), - "memo": "Payment for services rendered", - "currency": "USD", - "exchange_rate": "1.2", - "total_discount": 1000, - "sub_total": 10000, - "status": "Paid", - "total_tax_amount": 1000, - "total_amount": 11000, - "balance": 0, - "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "tracking_categories": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "line_items": [ - { - "name": "Net Income", - "value": 100000, - "type": "Operating Activities", - "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_id": "report_item_1234", - "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - }, - ], - "field_mappings": {}, + res = s.filestorage.files.create(x_connection_token="", unified_filestorage_file_input={ + "name": "my_paris_photo.png", + "file_url": "https://example.com/my_paris_photo.png", + "mime_type": "application/pdf", + "size": "1024", + "folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/journalentries"]["get"] + - target: $["paths"]["/filestorage/files/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAccountingJournalEntry + label: retrieveFilestorageFile source: |- from panora_sdk import Panora @@ -3688,21 +2086,16 @@ actions: api_key="", ) - - res = s.accounting.journalentries.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.filestorage.files.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/transactions/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/filestorage/folders"]["get"] update: x-codeSamples: - lang: python - label: retrieveAccountingTransaction + label: listFilestorageFolder source: |- from panora_sdk import Panora @@ -3710,44 +2103,50 @@ actions: api_key="", ) - - res = s.accounting.transactions.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.filestorage.folders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/field_mappings"]["post"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/filestorage/folders"]["post"] update: x-codeSamples: - lang: python - label: defineCustomField + label: createFilestorageFolder source: |- - import panora_sdk from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.field_mappings.define_custom_field(request={ - "object_type_owner": panora_sdk.CustomFieldCreateDtoObjectTypeOwner.COMPANY, - "name": "my_favorite_dish", - "description": "Favorite Dish", - "data_type": panora_sdk.CustomFieldCreateDtoDataType.STRING, - "source_custom_field_id": "id_1", - "source_provider": "hubspot", - "linked_user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - }) + res = s.filestorage.folders.create(x_connection_token="", unified_filestorage_folder_input={ + "name": "school", + "size": "2048", + "folder_url": "https://example.com/school", + "description": "All things school related", + "drive_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "parent_folder_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/filestorage/files/{id}"]["get"] + - target: $["paths"]["/filestorage/folders/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveFilestorageFile + label: retrieveFilestorageFolder source: |- from panora_sdk import Panora @@ -3755,17 +2154,16 @@ actions: api_key="", ) - - res = s.filestorage.files.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.filestorage.folders.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/crm/contacts"]["get"] + - target: $["paths"]["/filestorage/groups"]["get"] update: x-codeSamples: - lang: python - label: listCrmContacts + label: listFilestorageGroup source: |- from panora_sdk import Panora @@ -3773,21 +2171,20 @@ actions: api_key="", ) - - res = s.crm.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.filestorage.groups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/hris/companies/{id}"]["get"] + - target: $["paths"]["/filestorage/groups/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveHrisCompany + label: retrieveFilestorageGroup source: |- from panora_sdk import Panora @@ -3795,47 +2192,54 @@ actions: api_key="", ) - - res = s.hris.companies.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.filestorage.groups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/hris/timeoffs"]["post"] + - target: $["paths"]["/filestorage/users"]["get"] update: x-codeSamples: - lang: python - label: createHrisTimeoff + label: listFilestorageUsers source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) + res = s.filestorage.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + + if res is not None: + while True: + # handle items - res = s.hris.timeoffs.create(x_connection_token="", unified_hris_timeoff_input={ - "employee": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "approver": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "status": "REQUESTED", - "employee_note": "Annual vacation", - "units": "DAYS", - "amount": 5, - "request_type": "VACATION", - "start_time": dateutil.parser.isoparse("2024-07-01T09:00:00Z"), - "end_time": dateutil.parser.isoparse("2024-07-05T17:00:00Z"), - "field_mappings": {}, - }) + res = res.next() + if res is None: + break + - target: $["paths"]["/filestorage/users/{id}"]["get"] + update: + x-codeSamples: + - lang: python + label: retrieveFilestorageUser + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) + + res = s.filestorage.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/phonenumbers"]["get"] + - target: $["paths"]["/health"]["get"] update: x-codeSamples: - lang: python - label: listAccountingPhonenumber + label: health source: |- from panora_sdk import Panora @@ -3843,21 +2247,16 @@ actions: api_key="", ) - - res = s.accounting.phonenumbers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.health() if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/crm/users"]["get"] + # handle response + pass + - target: $["paths"]["/linked_users"]["get"] update: x-codeSamples: - lang: python - label: listCrmUsers + label: listLinkedUsers source: |- from panora_sdk import Panora @@ -3865,21 +2264,16 @@ actions: api_key="", ) - - res = s.crm.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.linked_users.list() if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ats/offers"]["get"] + # handle response + pass + - target: $["paths"]["/linked_users"]["post"] update: x-codeSamples: - lang: python - label: listAtsOffer + label: createLinkedUser source: |- from panora_sdk import Panora @@ -3887,21 +2281,19 @@ actions: api_key="", ) - - res = s.ats.offers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.linked_users.create(request={ + "linked_user_origin_id": "id_1", + "alias": "acme", + }) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/crm/companies"]["post"] + # handle response + pass + - target: $["paths"]["/linked_users/batch"]["post"] update: x-codeSamples: - lang: python - label: createCrmCompany + label: importBatch source: |- from panora_sdk import Panora @@ -3909,50 +2301,38 @@ actions: api_key="", ) - - res = s.crm.companies.create(x_connection_token="", unified_crm_company_input={ - "name": "Acme", - "industry": "ACCOUNTING", - "number_of_employees": 10, - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "email_addresses": [ - { - "email_address": "acme@gmail.com", - "email_address_type": "WORK", - }, - ], - "addresses": [ - { - "street_1": "5th Avenue", - "street_2": "Street 2", - "city": "New York", - "state": "NY", - "postal_code": "10001", - "country": "USA", - "address_type": "WORK", - "owner_type": "", - }, - ], - "phone_numbers": [ - { - "phone_number": "+33660606067", - "phone_type": "WORK", - }, + res = s.linked_users.import_batch(request={ + "linked_user_origin_ids": [ + "id_1", ], - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + "alias": "acme", + }) + + if res is not None: + # handle response + pass + - target: $["paths"]["/linked_users/fromRemoteId"]["get"] + update: + x-codeSamples: + - lang: python + label: remoteId + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) + + res = s.linked_users.remote_id(remote_id="id_1") if res is not None: # handle response pass - - target: $["paths"]["/ats/eeocs"]["get"] + - target: $["paths"]["/linked_users/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAtsEeocs + label: retrieveLinkedUser source: |- from panora_sdk import Panora @@ -3960,21 +2340,37 @@ actions: api_key="", ) + res = s.linked_users.retrieve(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") + + if res is not None: + # handle response + pass + - target: $["paths"]["/marketingautomation/actions"]["get"] + update: + x-codeSamples: + - lang: python + label: listMarketingautomationAction + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) - res = s.ats.eeocs.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.marketingautomation.actions.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/accounting/payments/{id}"]["get"] + - target: $["paths"]["/marketingautomation/actions"]["post"] update: x-codeSamples: - lang: python - label: retrieveAccountingPayment + label: createMarketingautomationAction source: |- from panora_sdk import Panora @@ -3982,17 +2378,16 @@ actions: api_key="", ) - - res = s.accounting.payments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.actions.create(x_connection_token="", unified_marketingautomation_action_input={}, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/filestorage/users/{id}"]["get"] + - target: $["paths"]["/marketingautomation/actions/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveFilestorageUser + label: retrieveMarketingautomationAction source: |- from panora_sdk import Panora @@ -4000,17 +2395,16 @@ actions: api_key="", ) - - res = s.filestorage.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.actions.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ticketing/tickets/{id}"]["get"] + - target: $["paths"]["/marketingautomation/automations"]["get"] update: x-codeSamples: - lang: python - label: retrieveTicketingTicket + label: listMarketingautomationAutomations source: |- from panora_sdk import Panora @@ -4018,53 +2412,37 @@ actions: api_key="", ) - - res = s.ticketing.tickets.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.automations.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/ats/applications"]["post"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/marketingautomation/automations"]["post"] update: x-codeSamples: - lang: python - label: createAtsApplication + label: createMarketingautomationAutomation source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ats.applications.create(x_connection_token="", unified_ats_application_input={ - "applied_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "rejected_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "offers": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "12345678-1234-1234-1234-123456789012", - ], - "source": "Source Name", - "credited_to": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "current_stage": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "reject_reason": "Candidate not experienced enough", - "candidate_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "job_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.marketingautomation.automations.create(x_connection_token="", unified_marketingautomation_automation_input={}, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/cashflowstatements/{id}"]["get"] + - target: $["paths"]["/marketingautomation/automations/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveAccountingCashflowStatement + label: retrieveMarketingautomationAutomation source: |- from panora_sdk import Panora @@ -4072,17 +2450,16 @@ actions: api_key="", ) - - res = s.accounting.cashflowstatements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.automations.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ecommerce/fulfillments"]["get"] + - target: $["paths"]["/marketingautomation/campaigns"]["get"] update: x-codeSamples: - lang: python - label: listEcommerceFulfillments + label: listMarketingautomationCampaigns source: |- from panora_sdk import Panora @@ -4090,21 +2467,20 @@ actions: api_key="", ) - - res = s.ecommerce.fulfillments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.marketingautomation.campaigns.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/health"]["get"] + - target: $["paths"]["/marketingautomation/campaigns"]["post"] update: x-codeSamples: - lang: python - label: health + label: createMarketingautomationCampaign source: |- from panora_sdk import Panora @@ -4112,17 +2488,33 @@ actions: api_key="", ) + res = s.marketingautomation.campaigns.create(x_connection_token="", unified_marketingautomation_campaign_input={}, remote_data=False) - res = s.health() + if res is not None: + # handle response + pass + - target: $["paths"]["/marketingautomation/campaigns/{id}"]["get"] + update: + x-codeSamples: + - lang: python + label: retrieveMarketingautomationCampaign + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) + + res = s.marketingautomation.campaigns.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/field_mappings/entities"]["get"] + - target: $["paths"]["/marketingautomation/contacts"]["get"] update: x-codeSamples: - lang: python - label: getFieldMappingsEntities + label: listMarketingAutomationContacts source: |- from panora_sdk import Panora @@ -4130,15 +2522,20 @@ actions: api_key="", ) + res = s.marketingautomation.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - s.field_mappings.get_field_mappings_entities() + if res is not None: + while True: + # handle items - # Use the SDK ... - - target: $["paths"]["/hris/locations/{id}"]["get"] + res = res.next() + if res is None: + break + - target: $["paths"]["/marketingautomation/contacts"]["post"] update: x-codeSamples: - lang: python - label: retrieveHrisLocation + label: createMarketingAutomationContact source: |- from panora_sdk import Panora @@ -4146,17 +2543,16 @@ actions: api_key="", ) - - res = s.hris.locations.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.contacts.create(x_connection_token="", unified_marketingautomation_contact_input={}, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/connections"]["get"] + - target: $["paths"]["/marketingautomation/contacts/{id}"]["get"] update: x-codeSamples: - lang: python - label: listConnections + label: retrieveMarketingAutomationContact source: |- from panora_sdk import Panora @@ -4164,17 +2560,16 @@ actions: api_key="", ) - - res = s.connections.list() + res = s.marketingautomation.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/tags"]["get"] + - target: $["paths"]["/marketingautomation/emails"]["get"] update: x-codeSamples: - lang: python - label: listAtsTags + label: listMarketingautomationEmails source: |- from panora_sdk import Panora @@ -4182,21 +2577,20 @@ actions: api_key="", ) - - res = s.ats.tags.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.marketingautomation.emails.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/accounting/attachments"]["get"] + - target: $["paths"]["/marketingautomation/emails/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAccountingAttachments + label: retrieveMarketingautomationEmail source: |- from panora_sdk import Panora @@ -4204,21 +2598,16 @@ actions: api_key="", ) - - res = s.accounting.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.marketingautomation.emails.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/transactions"]["get"] + # handle response + pass + - target: $["paths"]["/marketingautomation/events"]["get"] update: x-codeSamples: - lang: python - label: listAccountingTransaction + label: listMarketingAutomationEvents source: |- from panora_sdk import Panora @@ -4226,82 +2615,58 @@ actions: api_key="", ) - - res = s.accounting.transactions.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.marketingautomation.events.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/hris/timesheetentries"]["post"] + - target: $["paths"]["/marketingautomation/events/{id}"]["get"] update: x-codeSamples: - lang: python - label: createHrisTimesheetentry + label: retrieveMarketingautomationEvent source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.hris.timesheetentries.create(x_connection_token="", unified_hris_timesheet_entry_input={ - "hours_worked": 40, - "start_time": dateutil.parser.isoparse("2024-10-01T08:00:00Z"), - "end_time": dateutil.parser.isoparse("2024-10-01T16:00:00Z"), - "employee_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_was_deleted": False, - "field_mappings": {}, - }) + res = s.marketingautomation.events.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/crm/engagements"]["post"] + - target: $["paths"]["/marketingautomation/lists"]["get"] update: x-codeSamples: - lang: python - label: createCrmEngagement + label: listMarketingautomationLists source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.crm.engagements.create(x_connection_token="", unified_crm_engagement_input={ - "content": "Meeting call with CTO", - "direction": "INBOUND", - "subject": "Technical features planning", - "start_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "end_time": dateutil.parser.isoparse("2024-10-01T22:00:00Z"), - "type": "MEETING", - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "contacts": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.marketingautomation.lists.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/crm/tasks/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/marketingautomation/lists"]["post"] update: x-codeSamples: - lang: python - label: retrieveCrmTask + label: createMarketingautomationList source: |- from panora_sdk import Panora @@ -4309,17 +2674,16 @@ actions: api_key="", ) - - res = s.crm.tasks.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.lists.create(x_connection_token="", unified_marketingautomation_list_input={}) if res is not None: # handle response pass - - target: $["paths"]["/ats/users/{id}"]["get"] + - target: $["paths"]["/marketingautomation/lists/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsUser + label: retrieveMarketingautomationList source: |- from panora_sdk import Panora @@ -4327,17 +2691,16 @@ actions: api_key="", ) - - res = s.ats.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.lists.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/addresses/{id}"]["get"] + - target: $["paths"]["/marketingautomation/messages"]["get"] update: x-codeSamples: - lang: python - label: retrieveAccountingAddress + label: listMarketingautomationMessages source: |- from panora_sdk import Panora @@ -4345,17 +2708,20 @@ actions: api_key="", ) - - res = s.accounting.addresses.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.messages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/attachments"]["post"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/marketingautomation/messages/{id}"]["get"] update: x-codeSamples: - lang: python - label: createAccountingAttachment + label: retrieveMarketingautomationMessage source: |- from panora_sdk import Panora @@ -4363,22 +2729,16 @@ actions: api_key="", ) - - res = s.accounting.attachments.create(x_connection_token="", unified_accounting_attachment_input={ - "file_name": "invoice.pdf", - "file_url": "https://example.com/files/invoice.pdf", - "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": {}, - }, remote_data=False) + res = s.marketingautomation.messages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/accounting/purchaseorders/{id}"]["get"] + - target: $["paths"]["/marketingautomation/templates"]["get"] update: x-codeSamples: - lang: python - label: retrieveAccountingPurchaseOrder + label: listMarketingautomationTemplates source: |- from panora_sdk import Panora @@ -4386,17 +2746,20 @@ actions: api_key="", ) - - res = s.accounting.purchaseorders.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.templates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/field_mappings/values"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/marketingautomation/templates"]["post"] update: x-codeSamples: - lang: python - label: getFieldMappingValues + label: createMarketingautomationTemplate source: |- from panora_sdk import Panora @@ -4404,15 +2767,16 @@ actions: api_key="", ) + res = s.marketingautomation.templates.create(x_connection_token="", unified_marketingautomation_template_input={}) - s.field_mappings.get_field_mapping_values() - - # Use the SDK ... - - target: $["paths"]["/ats/attachments"]["get"] + if res is not None: + # handle response + pass + - target: $["paths"]["/marketingautomation/templates/{id}"]["get"] update: x-codeSamples: - lang: python - label: listAtsAttachment + label: retrieveMarketingautomationTemplate source: |- from panora_sdk import Panora @@ -4420,21 +2784,16 @@ actions: api_key="", ) - - res = s.ats.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.marketingautomation.templates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/ats/offers/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/marketingautomation/users"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsOffer + label: listMarketingAutomationUsers source: |- from panora_sdk import Panora @@ -4442,17 +2801,20 @@ actions: api_key="", ) - - res = s.ats.offers.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/filestorage/folders/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/marketingautomation/users/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveFilestorageFolder + label: retrieveMarketingAutomationUser source: |- from panora_sdk import Panora @@ -4460,35 +2822,44 @@ actions: api_key="", ) - - res = s.filestorage.folders.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.marketingautomation.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ticketing/tags/{id}"]["get"] + - target: $["paths"]["/passthrough"]["post"] update: x-codeSamples: - lang: python - label: retrieveTicketingTag + label: request source: |- + import panora_sdk from panora_sdk import Panora s = Panora( api_key="", ) + res = s.passthrough.request(x_connection_token="", pass_through_request_dto={ + "method": panora_sdk.PassThroughRequestDtoMethod.GET, + "path": "/etc/periodic", + "data": {}, + "request_format": { - res = s.ticketing.tags.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + }, + "override_base_url": { + + }, + }) if res is not None: # handle response pass - - target: $["paths"]["/hris/companies"]["get"] + - target: $["paths"]["/passthrough/{retryId}"]["get"] update: x-codeSamples: - lang: python - label: listHrisCompanies + label: getRetriedRequestResponse source: |- from panora_sdk import Panora @@ -4496,21 +2867,14 @@ actions: api_key="", ) + s.passthrough.retryid.get_retried_request_response(retry_id="") - res = s.hris.companies.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - - if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/actions"]["post"] + # Use the SDK ... + - target: $["paths"]["/projects"]["get"] update: x-codeSamples: - lang: python - label: createMarketingautomationAction + label: getProjects source: |- from panora_sdk import Panora @@ -4518,17 +2882,16 @@ actions: api_key="", ) - - res = s.marketingautomation.actions.create(x_connection_token="", unified_marketingautomation_action_input={}, remote_data=False) + res = s.projects.get_projects() if res is not None: # handle response pass - - target: $["paths"]["/accounting/accounts"]["get"] + - target: $["paths"]["/projects"]["post"] update: x-codeSamples: - lang: python - label: listAccountingAccounts + label: createProject source: |- from panora_sdk import Panora @@ -4536,21 +2899,20 @@ actions: api_key="", ) - - res = s.accounting.accounts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.projects.create(request={ + "name": "Project Name", + "id_organization": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "id_user": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + }) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/invoices/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/rag/query"]["post"] update: x-codeSamples: - lang: python - label: retrieveAccountingInvoice + label: query source: |- from panora_sdk import Panora @@ -4558,17 +2920,19 @@ actions: api_key="", ) - - res = s.accounting.invoices.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.rag.query(x_connection_token="", query_body={ + "query": "When does Panora incorporated?", + "top_k": 3, + }) if res is not None: # handle response pass - - target: $["paths"]["/crm/contacts"]["post"] + - target: $["paths"]["/sync/pull_frequencies"]["get"] update: x-codeSamples: - lang: python - label: createCrmContact + label: getPullFrequency source: |- from panora_sdk import Panora @@ -4576,49 +2940,16 @@ actions: api_key="", ) - - res = s.crm.contacts.create(x_connection_token="", unified_crm_contact_input={ - "first_name": "John", - "last_name": "Doe", - "email_addresses": [ - { - "email_address": "Jena.Nienow28@yahoo.com", - "email_address_type": "", - }, - ], - "phone_numbers": [ - { - "phone_number": "", - "phone_type": "", - }, - ], - "addresses": [ - { - "street_1": "5th Avenue", - "street_2": "Street 2", - "city": "Anytown", - "state": "CA", - "postal_code": "10001", - "country": "USA", - "address_type": "PERSONAL", - "owner_type": "", - }, - ], - "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, - }, remote_data=False) + res = s.sync.get_pull_frequency() if res is not None: # handle response pass - - target: $["paths"]["/crm/engagements/{id}"]["get"] + - target: $["paths"]["/sync/pull_frequencies"]["post"] update: x-codeSamples: - lang: python - label: retrieveCrmEngagement + label: updatePullFrequency source: |- from panora_sdk import Panora @@ -4626,17 +2957,20 @@ actions: api_key="", ) + s.sync.update_pull_frequency(request={ + "crm": 1800, + "accounting": 14400, + "filestorage": 28800, + "ecommerce": 43200, + "ticketing": 86400, + }) - res = s.crm.engagements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/templates/{id}"]["get"] + # Use the SDK ... + - target: $["paths"]["/sync/resync"]["post"] update: x-codeSamples: - lang: python - label: retrieveMarketingautomationTemplate + label: resync source: |- from panora_sdk import Panora @@ -4644,35 +2978,32 @@ actions: api_key="", ) - - res = s.marketingautomation.templates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.sync.resync() if res is not None: # handle response pass - - target: $["paths"]["/ats/jobs/{id}"]["get"] + - target: $["paths"]["/sync/status/{vertical}"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsJob + label: status source: |- + import panora_sdk from panora_sdk import Panora s = Panora( api_key="", ) + s.sync.status(vertical=panora_sdk.PathParamVertical.TICKETING) - res = s.ats.jobs.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - - if res is not None: - # handle response - pass - - target: $["paths"]["/accounting/cashflowstatements"]["get"] + # Use the SDK ... + - target: $["paths"]["/ticketing/accounts"]["get"] update: x-codeSamples: - lang: python - label: listAccountingCashflowStatement + label: listTicketingAccount source: |- from panora_sdk import Panora @@ -4680,21 +3011,20 @@ actions: api_key="", ) - - res = s.accounting.cashflowstatements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ticketing.accounts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/auth/login"]["post"] + - target: $["paths"]["/ticketing/accounts/{id}"]["get"] update: x-codeSamples: - lang: python - label: signIn + label: retrieveTicketingAccount source: |- from panora_sdk import Panora @@ -4702,18 +3032,16 @@ actions: api_key="", ) + res = s.ticketing.accounts.retrieve(x_connection_token="", id="") - s.auth.login.sign_in(request={ - "email": "Oda.Treutel97@hotmail.com", - "password_hash": "", - }) - - # Use the SDK ... - - target: $["paths"]["/events"]["get"] + if res is not None: + # handle response + pass + - target: $["paths"]["/ticketing/attachments"]["get"] update: x-codeSamples: - lang: python - label: getPanoraCoreEvents + label: listTicketingAttachments source: |- from panora_sdk import Panora @@ -4721,17 +3049,20 @@ actions: api_key="", ) - - res = s.events.get_panora_core_events() + res = s.ticketing.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/hris/dependents/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/ticketing/attachments"]["post"] update: x-codeSamples: - lang: python - label: retrieveHrisDependent + label: createTicketingAttachment source: |- from panora_sdk import Panora @@ -4739,17 +3070,26 @@ actions: api_key="", ) - - res = s.hris.dependents.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.attachments.create(x_connection_token="", unified_ticketing_attachment_input={ + "file_name": "features_planning.pdf", + "file_url": "https://example.com/features_planning.pdf", + "uploader": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "comment_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, + }) if res is not None: # handle response pass - - target: $["paths"]["/hris/employerbenefits/{id}"]["get"] + - target: $["paths"]["/ticketing/attachments/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveHrisEmployerBenefit + label: retrieveTicketingAttachment source: |- from panora_sdk import Panora @@ -4757,17 +3097,16 @@ actions: api_key="", ) - - res = s.hris.employerbenefits.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/interviews"]["get"] + - target: $["paths"]["/ticketing/collections"]["get"] update: x-codeSamples: - lang: python - label: listAtsInterview + label: listTicketingCollections source: |- from panora_sdk import Panora @@ -4775,21 +3114,20 @@ actions: api_key="", ) - - res = s.ats.interviews.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ticketing.collections.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ats/eeocs/{id}"]["get"] + - target: $["paths"]["/ticketing/collections/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsEeocs + label: retrieveCollection source: |- from panora_sdk import Panora @@ -4797,17 +3135,16 @@ actions: api_key="", ) - - res = s.ats.eeocs.retrieve(x_connection_token="", id="") + res = s.ticketing.collections.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/"]["get"] + - target: $["paths"]["/ticketing/comments"]["get"] update: x-codeSamples: - lang: python - label: hello + label: listTicketingComments source: |- from panora_sdk import Panora @@ -4815,17 +3152,20 @@ actions: api_key="", ) - - res = s.hello() + res = s.ticketing.comments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/webhooks/verifyEvent"]["post"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/ticketing/comments"]["post"] update: x-codeSamples: - lang: python - label: verifyEvent + label: createTicketingComment source: |- from panora_sdk import Panora @@ -4833,23 +3173,27 @@ actions: api_key="", ) - - res = s.webhooks.verify_event(request={ - "payload": { - "key": "", - }, - "signature": "", - "secret": "", + res = s.ticketing.comments.create(x_connection_token="", unified_ticketing_comment_input={ + "body": "Assigned to Eric !", + "html_body": "

Assigned to Eric !

", + "is_private": False, + "creator_type": "USER", + "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "attachments": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], }) if res is not None: # handle response pass - - target: $["paths"]["/hris/employments"]["get"] + - target: $["paths"]["/ticketing/comments/{id}"]["get"] update: x-codeSamples: - lang: python - label: listHrisEmployments + label: retrieveTicketingComment source: |- from panora_sdk import Panora @@ -4857,21 +3201,16 @@ actions: api_key="", ) - - res = s.hris.employments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ticketing.comments.retrieve(x_connection_token="", id="") if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/items/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/ticketing/contacts"]["get"] update: x-codeSamples: - lang: python - label: retrieveAccountingItem + label: listTicketingContacts source: |- from panora_sdk import Panora @@ -4879,61 +3218,37 @@ actions: api_key="", ) - - res = s.accounting.items.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/ecommerce/orders"]["post"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/ticketing/contacts/{id}"]["get"] update: x-codeSamples: - lang: python - label: createEcommerceOrder + label: retrieveTicketingContact source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ecommerce.orders.create(x_connection_token="", unified_ecommerce_order_input={ - "order_status": "UNSHIPPED", - "order_number": "19823838833", - "payment_status": "SUCCESS", - "currency": "AUD", - "total_price": 300, - "total_discount": 10, - "total_shipping": 120, - "total_tax": 120, - "fulfillment_status": "PENDING", - "customer_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "items": [ - { - "name": "Net Income", - "value": 100000, - "type": "Operating Activities", - "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_id": "12345", - "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - }, - ], - "field_mappings": {}, - }, remote_data=False) + res = s.ticketing.contacts.retrieve(x_connection_token="", id="") if res is not None: # handle response pass - - target: $["paths"]["/ticketing/collections/{id}"]["get"] + - target: $["paths"]["/ticketing/tags"]["get"] update: x-codeSamples: - lang: python - label: retrieveCollection + label: listTicketingTags source: |- from panora_sdk import Panora @@ -4941,39 +3256,37 @@ actions: api_key="", ) - - res = s.ticketing.collections.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.tags.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/passthrough"]["post"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/ticketing/tags/{id}"]["get"] update: x-codeSamples: - lang: python - label: request + label: retrieveTicketingTag source: |- - import panora_sdk from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.passthrough.request(x_connection_token="", pass_through_request_dto={ - "method": panora_sdk.PassThroughRequestDtoMethod.GET, - "path": "/dev", - }) + res = s.ticketing.tags.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/hris/bankinfos/{id}"]["get"] + - target: $["paths"]["/ticketing/teams"]["get"] update: x-codeSamples: - lang: python - label: retrieveHrisBankInfo + label: listTicketingTeams source: |- from panora_sdk import Panora @@ -4981,17 +3294,20 @@ actions: api_key="", ) - - res = s.hris.bankinfos.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.teams.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: - # handle response - pass - - target: $["paths"]["/marketingautomation/lists/{id}"]["get"] + while True: + # handle items + + res = res.next() + if res is None: + break + - target: $["paths"]["/ticketing/teams/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveMarketingautomationList + label: retrieveTicketingTeam source: |- from panora_sdk import Panora @@ -4999,17 +3315,16 @@ actions: api_key="", ) - - res = s.marketingautomation.lists.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.teams.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/marketingautomation/messages"]["get"] + - target: $["paths"]["/ticketing/tickets"]["get"] update: x-codeSamples: - lang: python - label: listMarketingautomationMessages + label: listTicketingTicket source: |- from panora_sdk import Panora @@ -5017,39 +3332,78 @@ actions: api_key="", ) - - res = s.marketingautomation.messages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ticketing.tickets.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/ats/activities/{id}"]["get"] + - target: $["paths"]["/ticketing/tickets"]["post"] update: x-codeSamples: - lang: python - label: retrieveAtsActivity + label: createTicketingTicket source: |- + import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - - res = s.ats.activities.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.tickets.create(x_connection_token="", unified_ticketing_ticket_input={ + "name": "Customer Service Inquiry", + "status": "OPEN", + "description": "Help customer", + "due_date": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), + "type": "BUG", + "parent_ticket": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "collections": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + "tags": [ + "my_tag", + "urgent_tag", + ], + "completed_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), + "priority": "HIGH", + "assigned_to": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + "comment": { + "body": "Assigned to Eric !", + "html_body": "

Assigned to Eric !

", + "is_private": False, + "creator_type": "USER", + "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "attachments": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + }, + "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "attachments": [ + "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + ], + "field_mappings": { + "fav_dish": "broccoli", + "fav_color": "red", + }, + }, remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ats/jobinterviewstages/{id}"]["get"] + - target: $["paths"]["/ticketing/tickets/{id}"]["get"] update: x-codeSamples: - lang: python - label: retrieveAtsJobInterviewStage + label: retrieveTicketingTicket source: |- from panora_sdk import Panora @@ -5057,17 +3411,16 @@ actions: api_key="", ) - - res = s.ats.jobinterviewstages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.ticketing.tickets.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response pass - - target: $["paths"]["/ticketing/accounts"]["get"] + - target: $["paths"]["/ticketing/users"]["get"] update: x-codeSamples: - lang: python - label: listTicketingAccount + label: listTicketingUsers source: |- from panora_sdk import Panora @@ -5075,21 +3428,20 @@ actions: api_key="", ) - - res = s.ticketing.accounts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ticketing.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - - target: $["paths"]["/hris/benefits"]["get"] + - target: $["paths"]["/ticketing/users/{id}"]["get"] update: x-codeSamples: - lang: python - label: listHrisBenefits + label: retrieveTicketingUser source: |- from panora_sdk import Panora @@ -5097,21 +3449,16 @@ actions: api_key="", ) - - res = s.hris.benefits.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.ticketing.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/marketingautomation/events"]["get"] + # handle response + pass + - target: $["paths"]["/webhooks"]["get"] update: x-codeSamples: - lang: python - label: listMarketingAutomationEvents + label: listWebhooks source: |- from panora_sdk import Panora @@ -5119,21 +3466,16 @@ actions: api_key="", ) - - res = s.marketingautomation.events.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + res = s.webhooks.list() if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/incomestatements/{id}"]["get"] + # handle response + pass + - target: $["paths"]["/webhooks"]["post"] update: x-codeSamples: - lang: python - label: retrieveAccountingIncomeStatement + label: createWebhookPublic source: |- from panora_sdk import Panora @@ -5141,17 +3483,22 @@ actions: api_key="", ) - - res = s.accounting.incomestatements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) + res = s.webhooks.create(request={ + "url": "https://acme.com/webhook_receiver", + "description": "Webhook to receive connection events", + "scope": [ + "connection.created", + ], + }) if res is not None: # handle response pass - - target: $["paths"]["/marketingautomation/campaigns"]["get"] + - target: $["paths"]["/webhooks/verifyEvent"]["post"] update: x-codeSamples: - lang: python - label: listMarketingautomationCampaigns + label: verifyEvent source: |- from panora_sdk import Panora @@ -5159,59 +3506,47 @@ actions: api_key="", ) + res = s.webhooks.verify_event(request={ + "payload": { - res = s.marketingautomation.campaigns.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") + }, + "signature": "", + "secret": "", + }) if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - target: $["paths"]["/accounting/payments"]["post"] + # handle response + pass + - target: $["paths"]["/webhooks/{id}"]["delete"] update: x-codeSamples: - lang: python - label: createAccountingPayment + label: delete source: |- - import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) + res = s.webhooks.delete(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") - res = s.accounting.payments.create(x_connection_token="", unified_accounting_payment_input={ - "invoice_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "currency": "USD", - "exchange_rate": "1.2", - "total_amount": 10000, - "type": "Credit Card", - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "accounting_period_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "tracking_categories": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "line_items": [ - { - "name": "Net Income", - "value": 100000, - "type": "Operating Activities", - "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_id": "report_item_1234", - "remote_generated_at": dateutil.parser.isoparse("2024-07-01T12:00:00Z"), - "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "created_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - "modified_at": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), - }, - ], - "field_mappings": {}, - }, remote_data=False) + if res is not None: + # handle response + pass + - target: $["paths"]["/webhooks/{id}"]["put"] + update: + x-codeSamples: + - lang: python + label: updateStatus + source: |- + from panora_sdk import Panora + + s = Panora( + api_key="", + ) + + res = s.webhooks.update_status(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") if res is not None: # handle response diff --git a/docs/models/applicationsmodel.md b/docs/models/applicationsmodel.md deleted file mode 100644 index 6716c3b..0000000 --- a/docs/models/applicationsmodel.md +++ /dev/null @@ -1,17 +0,0 @@ -# ApplicationsModel - - -## Supported Types - -### `str` - -```python -value: str = /* values here */ -``` - -### `models.UnifiedAtsApplicationOutput` - -```python -value: models.UnifiedAtsApplicationOutput = /* values here */ -``` - diff --git a/docs/models/createatsactivityrequest.md b/docs/models/createatsactivityrequest.md deleted file mode 100644 index ce3fe54..0000000 --- a/docs/models/createatsactivityrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateAtsActivityRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_activity_input` | [models.UnifiedAtsActivityInput](../models/unifiedatsactivityinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/createatsapplicationrequest.md b/docs/models/createatsapplicationrequest.md deleted file mode 100644 index 121ac81..0000000 --- a/docs/models/createatsapplicationrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateAtsApplicationRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_application_input` | [models.UnifiedAtsApplicationInput](../models/unifiedatsapplicationinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/createatsattachmentrequest.md b/docs/models/createatsattachmentrequest.md deleted file mode 100644 index 27567dd..0000000 --- a/docs/models/createatsattachmentrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateAtsAttachmentRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_attachment_input` | [models.UnifiedAtsAttachmentInput](../models/unifiedatsattachmentinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/createatscandidaterequest.md b/docs/models/createatscandidaterequest.md deleted file mode 100644 index 040799b..0000000 --- a/docs/models/createatscandidaterequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateAtsCandidateRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_candidate_input` | [models.UnifiedAtsCandidateInput](../models/unifiedatscandidateinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/createatsinterviewrequest.md b/docs/models/createatsinterviewrequest.md deleted file mode 100644 index 96bdb01..0000000 --- a/docs/models/createatsinterviewrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateAtsInterviewRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_interview_input` | [models.UnifiedAtsInterviewInput](../models/unifiedatsinterviewinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/createhrisemployeerequest.md b/docs/models/createhrisemployeerequest.md deleted file mode 100644 index 0297024..0000000 --- a/docs/models/createhrisemployeerequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateHrisEmployeeRequest - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `unified_hris_employee_input` | [models.UnifiedHrisEmployeeInput](../models/unifiedhrisemployeeinput.md) | :heavy_check_mark: | N/A | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | \ No newline at end of file diff --git a/docs/models/createhristimeoffrequest.md b/docs/models/createhristimeoffrequest.md deleted file mode 100644 index 1026c0a..0000000 --- a/docs/models/createhristimeoffrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateHrisTimeoffRequest - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `unified_hris_timeoff_input` | [models.UnifiedHrisTimeoffInput](../models/unifiedhristimeoffinput.md) | :heavy_check_mark: | N/A | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | \ No newline at end of file diff --git a/docs/models/createhristimesheetentryrequest.md b/docs/models/createhristimesheetentryrequest.md deleted file mode 100644 index e00aea7..0000000 --- a/docs/models/createhristimesheetentryrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# CreateHrisTimesheetentryRequest - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `unified_hris_timesheet_entry_input` | [models.UnifiedHrisTimesheetEntryInput](../models/unifiedhristimesheetentryinput.md) | :heavy_check_mark: | N/A | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | \ No newline at end of file diff --git a/docs/models/deductionitem.md b/docs/models/deductionitem.md deleted file mode 100644 index dd72d40..0000000 --- a/docs/models/deductionitem.md +++ /dev/null @@ -1,10 +0,0 @@ -# DeductionItem - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the deduction | Health Insurance | -| `employee_deduction` | *OptionalNullable[float]* | :heavy_minus_sign: | The amount of employee deduction | 100 | -| `company_deduction` | *OptionalNullable[float]* | :heavy_minus_sign: | The amount of company deduction | 200 | \ No newline at end of file diff --git a/docs/models/earningitem.md b/docs/models/earningitem.md deleted file mode 100644 index 5b532fc..0000000 --- a/docs/models/earningitem.md +++ /dev/null @@ -1,9 +0,0 @@ -# EarningItem - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------- | ------------------------- | ------------------------- | ------------------------- | ------------------------- | -| `amount` | *OptionalNullable[float]* | :heavy_minus_sign: | The amount of the earning | 1000 | -| `type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the earning | Salary | \ No newline at end of file diff --git a/docs/models/headers.md b/docs/models/headers.md deleted file mode 100644 index a95ff21..0000000 --- a/docs/models/headers.md +++ /dev/null @@ -1,7 +0,0 @@ -# Headers - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/listatsactivityrequest.md b/docs/models/listatsactivityrequest.md deleted file mode 100644 index 6664b03..0000000 --- a/docs/models/listatsactivityrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsActivityRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsactivityresponse.md b/docs/models/listatsactivityresponse.md deleted file mode 100644 index e72eb3b..0000000 --- a/docs/models/listatsactivityresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsActivityResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `result` | [models.ListAtsActivityResponseBody](../models/listatsactivityresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsactivityresponsebody.md b/docs/models/listatsactivityresponsebody.md deleted file mode 100644 index 2768764..0000000 --- a/docs/models/listatsactivityresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsActivityResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsActivityOutput](../models/unifiedatsactivityoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsapplicationrequest.md b/docs/models/listatsapplicationrequest.md deleted file mode 100644 index dfd16a4..0000000 --- a/docs/models/listatsapplicationrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsApplicationRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsapplicationresponse.md b/docs/models/listatsapplicationresponse.md deleted file mode 100644 index 6eebf9b..0000000 --- a/docs/models/listatsapplicationresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsApplicationResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `result` | [models.ListAtsApplicationResponseBody](../models/listatsapplicationresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsapplicationresponsebody.md b/docs/models/listatsapplicationresponsebody.md deleted file mode 100644 index 6c12e96..0000000 --- a/docs/models/listatsapplicationresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsApplicationResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsApplicationOutput](../models/unifiedatsapplicationoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsattachmentrequest.md b/docs/models/listatsattachmentrequest.md deleted file mode 100644 index 3752449..0000000 --- a/docs/models/listatsattachmentrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsAttachmentRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsattachmentresponse.md b/docs/models/listatsattachmentresponse.md deleted file mode 100644 index e637db9..0000000 --- a/docs/models/listatsattachmentresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsAttachmentResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `result` | [models.ListAtsAttachmentResponseBody](../models/listatsattachmentresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsattachmentresponsebody.md b/docs/models/listatsattachmentresponsebody.md deleted file mode 100644 index 8bc6469..0000000 --- a/docs/models/listatsattachmentresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsAttachmentResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsAttachmentOutput](../models/unifiedatsattachmentoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatscandidaterequest.md b/docs/models/listatscandidaterequest.md deleted file mode 100644 index 3ea040c..0000000 --- a/docs/models/listatscandidaterequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsCandidateRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatscandidateresponse.md b/docs/models/listatscandidateresponse.md deleted file mode 100644 index 629a178..0000000 --- a/docs/models/listatscandidateresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsCandidateResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `result` | [models.ListAtsCandidateResponseBody](../models/listatscandidateresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatscandidateresponsebody.md b/docs/models/listatscandidateresponsebody.md deleted file mode 100644 index 3133e99..0000000 --- a/docs/models/listatscandidateresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsCandidateResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsCandidateOutput](../models/unifiedatscandidateoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsdepartmentsrequest.md b/docs/models/listatsdepartmentsrequest.md deleted file mode 100644 index 2a83db2..0000000 --- a/docs/models/listatsdepartmentsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsDepartmentsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsdepartmentsresponse.md b/docs/models/listatsdepartmentsresponse.md deleted file mode 100644 index dedc8f8..0000000 --- a/docs/models/listatsdepartmentsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsDepartmentsResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `result` | [models.ListAtsDepartmentsResponseBody](../models/listatsdepartmentsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsdepartmentsresponsebody.md b/docs/models/listatsdepartmentsresponsebody.md deleted file mode 100644 index f28f6f5..0000000 --- a/docs/models/listatsdepartmentsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsDepartmentsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsDepartmentOutput](../models/unifiedatsdepartmentoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatseeocsrequest.md b/docs/models/listatseeocsrequest.md deleted file mode 100644 index bc8d258..0000000 --- a/docs/models/listatseeocsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsEeocsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatseeocsresponse.md b/docs/models/listatseeocsresponse.md deleted file mode 100644 index 834715e..0000000 --- a/docs/models/listatseeocsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsEeocsResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `result` | [models.ListAtsEeocsResponseBody](../models/listatseeocsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatseeocsresponsebody.md b/docs/models/listatseeocsresponsebody.md deleted file mode 100644 index 1e9ba70..0000000 --- a/docs/models/listatseeocsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsEeocsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsEeocsOutput](../models/unifiedatseeocsoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsinterviewrequest.md b/docs/models/listatsinterviewrequest.md deleted file mode 100644 index 7f18fdc..0000000 --- a/docs/models/listatsinterviewrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsInterviewRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsinterviewresponse.md b/docs/models/listatsinterviewresponse.md deleted file mode 100644 index e7b9209..0000000 --- a/docs/models/listatsinterviewresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsInterviewResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `result` | [models.ListAtsInterviewResponseBody](../models/listatsinterviewresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsinterviewresponsebody.md b/docs/models/listatsinterviewresponsebody.md deleted file mode 100644 index 43ed745..0000000 --- a/docs/models/listatsinterviewresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsInterviewResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsInterviewOutput](../models/unifiedatsinterviewoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsjobinterviewstagerequest.md b/docs/models/listatsjobinterviewstagerequest.md deleted file mode 100644 index bba8f5b..0000000 --- a/docs/models/listatsjobinterviewstagerequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsJobInterviewStageRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsjobinterviewstageresponse.md b/docs/models/listatsjobinterviewstageresponse.md deleted file mode 100644 index 2493905..0000000 --- a/docs/models/listatsjobinterviewstageresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsJobInterviewStageResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `result` | [models.ListAtsJobInterviewStageResponseBody](../models/listatsjobinterviewstageresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsjobinterviewstageresponsebody.md b/docs/models/listatsjobinterviewstageresponsebody.md deleted file mode 100644 index 2cced27..0000000 --- a/docs/models/listatsjobinterviewstageresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsJobInterviewStageResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsJobinterviewstageOutput](../models/unifiedatsjobinterviewstageoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsjobrequest.md b/docs/models/listatsjobrequest.md deleted file mode 100644 index 9425970..0000000 --- a/docs/models/listatsjobrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsJobRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsjobresponse.md b/docs/models/listatsjobresponse.md deleted file mode 100644 index f53e558..0000000 --- a/docs/models/listatsjobresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsJobResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `result` | [models.ListAtsJobResponseBody](../models/listatsjobresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsjobresponsebody.md b/docs/models/listatsjobresponsebody.md deleted file mode 100644 index 914b593..0000000 --- a/docs/models/listatsjobresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsJobResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsJobOutput](../models/unifiedatsjoboutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsofferrequest.md b/docs/models/listatsofferrequest.md deleted file mode 100644 index b29ef9a..0000000 --- a/docs/models/listatsofferrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsOfferRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsofferresponse.md b/docs/models/listatsofferresponse.md deleted file mode 100644 index 040455f..0000000 --- a/docs/models/listatsofferresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsOfferResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `result` | [models.ListAtsOfferResponseBody](../models/listatsofferresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsofferresponsebody.md b/docs/models/listatsofferresponsebody.md deleted file mode 100644 index c4d44b9..0000000 --- a/docs/models/listatsofferresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsOfferResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsOfferOutput](../models/unifiedatsofferoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsofficerequest.md b/docs/models/listatsofficerequest.md deleted file mode 100644 index b8068da..0000000 --- a/docs/models/listatsofficerequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsOfficeRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsofficeresponse.md b/docs/models/listatsofficeresponse.md deleted file mode 100644 index 8520cbb..0000000 --- a/docs/models/listatsofficeresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsOfficeResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `result` | [models.ListAtsOfficeResponseBody](../models/listatsofficeresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsofficeresponsebody.md b/docs/models/listatsofficeresponsebody.md deleted file mode 100644 index 9a2ad37..0000000 --- a/docs/models/listatsofficeresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsOfficeResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsOfficeOutput](../models/unifiedatsofficeoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsrejectreasonsrequest.md b/docs/models/listatsrejectreasonsrequest.md deleted file mode 100644 index d2ebbb4..0000000 --- a/docs/models/listatsrejectreasonsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsRejectReasonsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsrejectreasonsresponse.md b/docs/models/listatsrejectreasonsresponse.md deleted file mode 100644 index 742a4d5..0000000 --- a/docs/models/listatsrejectreasonsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsRejectReasonsResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `result` | [models.ListAtsRejectReasonsResponseBody](../models/listatsrejectreasonsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsrejectreasonsresponsebody.md b/docs/models/listatsrejectreasonsresponsebody.md deleted file mode 100644 index f618810..0000000 --- a/docs/models/listatsrejectreasonsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsRejectReasonsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsRejectreasonOutput](../models/unifiedatsrejectreasonoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsscorecardrequest.md b/docs/models/listatsscorecardrequest.md deleted file mode 100644 index 447913e..0000000 --- a/docs/models/listatsscorecardrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsScorecardRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsscorecardresponse.md b/docs/models/listatsscorecardresponse.md deleted file mode 100644 index 73deb7e..0000000 --- a/docs/models/listatsscorecardresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsScorecardResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `result` | [models.ListAtsScorecardResponseBody](../models/listatsscorecardresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsscorecardresponsebody.md b/docs/models/listatsscorecardresponsebody.md deleted file mode 100644 index 1876086..0000000 --- a/docs/models/listatsscorecardresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsScorecardResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsScorecardOutput](../models/unifiedatsscorecardoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatstagsrequest.md b/docs/models/listatstagsrequest.md deleted file mode 100644 index ac13015..0000000 --- a/docs/models/listatstagsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsTagsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatstagsresponse.md b/docs/models/listatstagsresponse.md deleted file mode 100644 index 627d9b9..0000000 --- a/docs/models/listatstagsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsTagsResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `result` | [models.ListAtsTagsResponseBody](../models/listatstagsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatstagsresponsebody.md b/docs/models/listatstagsresponsebody.md deleted file mode 100644 index 5350025..0000000 --- a/docs/models/listatstagsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsTagsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsTagOutput](../models/unifiedatstagoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsusersrequest.md b/docs/models/listatsusersrequest.md deleted file mode 100644 index 7a24b07..0000000 --- a/docs/models/listatsusersrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListAtsUsersRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listatsusersresponse.md b/docs/models/listatsusersresponse.md deleted file mode 100644 index fef36bf..0000000 --- a/docs/models/listatsusersresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListAtsUsersResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `result` | [models.ListAtsUsersResponseBody](../models/listatsusersresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listatsusersresponsebody.md b/docs/models/listatsusersresponsebody.md deleted file mode 100644 index 21a54b1..0000000 --- a/docs/models/listatsusersresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListAtsUsersResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedAtsUserOutput](../models/unifiedatsuseroutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisbankinforequest.md b/docs/models/listhrisbankinforequest.md deleted file mode 100644 index e913016..0000000 --- a/docs/models/listhrisbankinforequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisBankInfoRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisbankinforesponse.md b/docs/models/listhrisbankinforesponse.md deleted file mode 100644 index b502e90..0000000 --- a/docs/models/listhrisbankinforesponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisBankInfoResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `result` | [models.ListHrisBankInfoResponseBody](../models/listhrisbankinforesponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisbankinforesponsebody.md b/docs/models/listhrisbankinforesponsebody.md deleted file mode 100644 index a593856..0000000 --- a/docs/models/listhrisbankinforesponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisBankInfoResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisBankinfoOutput](../models/unifiedhrisbankinfooutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisbenefitsrequest.md b/docs/models/listhrisbenefitsrequest.md deleted file mode 100644 index c45404a..0000000 --- a/docs/models/listhrisbenefitsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisBenefitsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisbenefitsresponse.md b/docs/models/listhrisbenefitsresponse.md deleted file mode 100644 index b323006..0000000 --- a/docs/models/listhrisbenefitsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisBenefitsResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `result` | [models.ListHrisBenefitsResponseBody](../models/listhrisbenefitsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisbenefitsresponsebody.md b/docs/models/listhrisbenefitsresponsebody.md deleted file mode 100644 index 0088158..0000000 --- a/docs/models/listhrisbenefitsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisBenefitsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisBenefitOutput](../models/unifiedhrisbenefitoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhriscompaniesrequest.md b/docs/models/listhriscompaniesrequest.md deleted file mode 100644 index d650456..0000000 --- a/docs/models/listhriscompaniesrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisCompaniesRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhriscompaniesresponse.md b/docs/models/listhriscompaniesresponse.md deleted file mode 100644 index 60b2126..0000000 --- a/docs/models/listhriscompaniesresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisCompaniesResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `result` | [models.ListHrisCompaniesResponseBody](../models/listhriscompaniesresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhriscompaniesresponsebody.md b/docs/models/listhriscompaniesresponsebody.md deleted file mode 100644 index 11c7fe0..0000000 --- a/docs/models/listhriscompaniesresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisCompaniesResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisCompanyOutput](../models/unifiedhriscompanyoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisdependentsrequest.md b/docs/models/listhrisdependentsrequest.md deleted file mode 100644 index d1d1b5d..0000000 --- a/docs/models/listhrisdependentsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisDependentsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisdependentsresponse.md b/docs/models/listhrisdependentsresponse.md deleted file mode 100644 index 011a51d..0000000 --- a/docs/models/listhrisdependentsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisDependentsResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `result` | [models.ListHrisDependentsResponseBody](../models/listhrisdependentsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisdependentsresponsebody.md b/docs/models/listhrisdependentsresponsebody.md deleted file mode 100644 index 722e98a..0000000 --- a/docs/models/listhrisdependentsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisDependentsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisDependentOutput](../models/unifiedhrisdependentoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemployeepayrollrunrequest.md b/docs/models/listhrisemployeepayrollrunrequest.md deleted file mode 100644 index 722e677..0000000 --- a/docs/models/listhrisemployeepayrollrunrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisEmployeePayrollRunRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisemployeepayrollrunresponse.md b/docs/models/listhrisemployeepayrollrunresponse.md deleted file mode 100644 index 06dcfca..0000000 --- a/docs/models/listhrisemployeepayrollrunresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisEmployeePayrollRunResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `result` | [models.ListHrisEmployeePayrollRunResponseBody](../models/listhrisemployeepayrollrunresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemployeepayrollrunresponsebody.md b/docs/models/listhrisemployeepayrollrunresponsebody.md deleted file mode 100644 index 0cced19..0000000 --- a/docs/models/listhrisemployeepayrollrunresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisEmployeePayrollRunResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisEmployeepayrollrunOutput](../models/unifiedhrisemployeepayrollrunoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemployeesrequest.md b/docs/models/listhrisemployeesrequest.md deleted file mode 100644 index dfd3939..0000000 --- a/docs/models/listhrisemployeesrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisEmployeesRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisemployeesresponse.md b/docs/models/listhrisemployeesresponse.md deleted file mode 100644 index 1f9440d..0000000 --- a/docs/models/listhrisemployeesresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisEmployeesResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `result` | [models.ListHrisEmployeesResponseBody](../models/listhrisemployeesresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemployeesresponsebody.md b/docs/models/listhrisemployeesresponsebody.md deleted file mode 100644 index 5966b3f..0000000 --- a/docs/models/listhrisemployeesresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisEmployeesResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisEmployeeOutput](../models/unifiedhrisemployeeoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemployerbenefitsrequest.md b/docs/models/listhrisemployerbenefitsrequest.md deleted file mode 100644 index 00dc5b4..0000000 --- a/docs/models/listhrisemployerbenefitsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisEmployerBenefitsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisemployerbenefitsresponse.md b/docs/models/listhrisemployerbenefitsresponse.md deleted file mode 100644 index 68ec563..0000000 --- a/docs/models/listhrisemployerbenefitsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisEmployerBenefitsResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `result` | [models.ListHrisEmployerBenefitsResponseBody](../models/listhrisemployerbenefitsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemployerbenefitsresponsebody.md b/docs/models/listhrisemployerbenefitsresponsebody.md deleted file mode 100644 index 7848cde..0000000 --- a/docs/models/listhrisemployerbenefitsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisEmployerBenefitsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisEmployerbenefitOutput](../models/unifiedhrisemployerbenefitoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemploymentsrequest.md b/docs/models/listhrisemploymentsrequest.md deleted file mode 100644 index 37bd6d4..0000000 --- a/docs/models/listhrisemploymentsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisEmploymentsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisemploymentsresponse.md b/docs/models/listhrisemploymentsresponse.md deleted file mode 100644 index d51bbb5..0000000 --- a/docs/models/listhrisemploymentsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisEmploymentsResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `result` | [models.ListHrisEmploymentsResponseBody](../models/listhrisemploymentsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisemploymentsresponsebody.md b/docs/models/listhrisemploymentsresponsebody.md deleted file mode 100644 index c22ceb6..0000000 --- a/docs/models/listhrisemploymentsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisEmploymentsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisEmploymentOutput](../models/unifiedhrisemploymentoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisgroupsrequest.md b/docs/models/listhrisgroupsrequest.md deleted file mode 100644 index 6cb5b5d..0000000 --- a/docs/models/listhrisgroupsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisGroupsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrisgroupsresponse.md b/docs/models/listhrisgroupsresponse.md deleted file mode 100644 index 4a1725f..0000000 --- a/docs/models/listhrisgroupsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisGroupsResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `result` | [models.ListHrisGroupsResponseBody](../models/listhrisgroupsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrisgroupsresponsebody.md b/docs/models/listhrisgroupsresponsebody.md deleted file mode 100644 index d08f5fd..0000000 --- a/docs/models/listhrisgroupsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisGroupsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisGroupOutput](../models/unifiedhrisgroupoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrislocationsrequest.md b/docs/models/listhrislocationsrequest.md deleted file mode 100644 index e0e1768..0000000 --- a/docs/models/listhrislocationsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisLocationsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrislocationsresponse.md b/docs/models/listhrislocationsresponse.md deleted file mode 100644 index 8db48b0..0000000 --- a/docs/models/listhrislocationsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisLocationsResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `result` | [models.ListHrisLocationsResponseBody](../models/listhrislocationsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrislocationsresponsebody.md b/docs/models/listhrislocationsresponsebody.md deleted file mode 100644 index fdd8a82..0000000 --- a/docs/models/listhrislocationsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisLocationsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisLocationOutput](../models/unifiedhrislocationoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrispaygroupsrequest.md b/docs/models/listhrispaygroupsrequest.md deleted file mode 100644 index cb22814..0000000 --- a/docs/models/listhrispaygroupsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisPaygroupsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrispaygroupsresponse.md b/docs/models/listhrispaygroupsresponse.md deleted file mode 100644 index 0ec274e..0000000 --- a/docs/models/listhrispaygroupsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisPaygroupsResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `result` | [models.ListHrisPaygroupsResponseBody](../models/listhrispaygroupsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrispaygroupsresponsebody.md b/docs/models/listhrispaygroupsresponsebody.md deleted file mode 100644 index fc122fc..0000000 --- a/docs/models/listhrispaygroupsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisPaygroupsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisPaygroupOutput](../models/unifiedhrispaygroupoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrispayrollrunsrequest.md b/docs/models/listhrispayrollrunsrequest.md deleted file mode 100644 index cbcd36e..0000000 --- a/docs/models/listhrispayrollrunsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisPayrollRunsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhrispayrollrunsresponse.md b/docs/models/listhrispayrollrunsresponse.md deleted file mode 100644 index dec79a7..0000000 --- a/docs/models/listhrispayrollrunsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisPayrollRunsResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `result` | [models.ListHrisPayrollRunsResponseBody](../models/listhrispayrollrunsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhrispayrollrunsresponsebody.md b/docs/models/listhrispayrollrunsresponsebody.md deleted file mode 100644 index e2c2994..0000000 --- a/docs/models/listhrispayrollrunsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisPayrollRunsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisPayrollrunOutput](../models/unifiedhrispayrollrunoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhristimeoffbalancesrequest.md b/docs/models/listhristimeoffbalancesrequest.md deleted file mode 100644 index 9aedce3..0000000 --- a/docs/models/listhristimeoffbalancesrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisTimeoffbalancesRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhristimeoffbalancesresponse.md b/docs/models/listhristimeoffbalancesresponse.md deleted file mode 100644 index 37a5669..0000000 --- a/docs/models/listhristimeoffbalancesresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisTimeoffbalancesResponse - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `result` | [models.ListHrisTimeoffbalancesResponseBody](../models/listhristimeoffbalancesresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhristimeoffbalancesresponsebody.md b/docs/models/listhristimeoffbalancesresponsebody.md deleted file mode 100644 index 517ff92..0000000 --- a/docs/models/listhristimeoffbalancesresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisTimeoffbalancesResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisTimeoffbalanceOutput](../models/unifiedhristimeoffbalanceoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhristimeoffsrequest.md b/docs/models/listhristimeoffsrequest.md deleted file mode 100644 index f173946..0000000 --- a/docs/models/listhristimeoffsrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisTimeoffsRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhristimeoffsresponse.md b/docs/models/listhristimeoffsresponse.md deleted file mode 100644 index a7c29b2..0000000 --- a/docs/models/listhristimeoffsresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisTimeoffsResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `result` | [models.ListHrisTimeoffsResponseBody](../models/listhristimeoffsresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhristimeoffsresponsebody.md b/docs/models/listhristimeoffsresponsebody.md deleted file mode 100644 index 9a7a0ec..0000000 --- a/docs/models/listhristimeoffsresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisTimeoffsResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisTimeoffOutput](../models/unifiedhristimeoffoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhristimesheetentriesrequest.md b/docs/models/listhristimesheetentriesrequest.md deleted file mode 100644 index d75a196..0000000 --- a/docs/models/listhristimesheetentriesrequest.md +++ /dev/null @@ -1,11 +0,0 @@ -# ListHrisTimesheetentriesRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | \ No newline at end of file diff --git a/docs/models/listhristimesheetentriesresponse.md b/docs/models/listhristimesheetentriesresponse.md deleted file mode 100644 index 43203c3..0000000 --- a/docs/models/listhristimesheetentriesresponse.md +++ /dev/null @@ -1,8 +0,0 @@ -# ListHrisTimesheetentriesResponse - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `result` | [models.ListHrisTimesheetentriesResponseBody](../models/listhristimesheetentriesresponsebody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/listhristimesheetentriesresponsebody.md b/docs/models/listhristimesheetentriesresponsebody.md deleted file mode 100644 index d14978a..0000000 --- a/docs/models/listhristimesheetentriesresponsebody.md +++ /dev/null @@ -1,10 +0,0 @@ -# ListHrisTimesheetentriesResponseBody - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `prev_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `next_cursor` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | List[[models.UnifiedHrisTimesheetEntryOutput](../models/unifiedhristimesheetentryoutput.md)] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/logindto.md b/docs/models/logindto.md index 1f78b24..5ac0fce 100644 --- a/docs/models/logindto.md +++ b/docs/models/logindto.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | +| `id_user` | *str* | :heavy_check_mark: | N/A | | `email` | *str* | :heavy_check_mark: | N/A | -| `password_hash` | *str* | :heavy_check_mark: | N/A | -| `id_user` | *Optional[str]* | :heavy_minus_sign: | N/A | \ No newline at end of file +| `password_hash` | *str* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/passthroughrequestdto.md b/docs/models/passthroughrequestdto.md index 5a9edf7..460a24d 100644 --- a/docs/models/passthroughrequestdto.md +++ b/docs/models/passthroughrequestdto.md @@ -7,7 +7,6 @@ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | | `method` | [models.PassThroughRequestDtoMethod](../models/passthroughrequestdtomethod.md) | :heavy_check_mark: | N/A | | `path` | *Nullable[str]* | :heavy_check_mark: | N/A | -| `data` | [Optional[models.Data]](../models/data.md) | :heavy_minus_sign: | N/A | -| `request_format` | [OptionalNullable[models.RequestFormat]](../models/requestformat.md) | :heavy_minus_sign: | N/A | -| `override_base_url` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | -| `headers` | [Optional[models.Headers]](../models/headers.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| `data` | [models.Data](../models/data.md) | :heavy_check_mark: | N/A | +| `request_format` | [Nullable[models.RequestFormat]](../models/requestformat.md) | :heavy_check_mark: | N/A | +| `override_base_url` | Dict[str, *Any*] | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/pathparamvertical.md b/docs/models/pathparamvertical.md index d5862d5..ee02325 100644 --- a/docs/models/pathparamvertical.md +++ b/docs/models/pathparamvertical.md @@ -9,7 +9,5 @@ | `MARKETINGAUTOMATION` | marketingautomation | | `CRM` | crm | | `FILESTORAGE` | filestorage | -| `ATS` | ats | -| `HRIS` | hris | | `ACCOUNTING` | accounting | | `ECOMMERCE` | ecommerce | \ No newline at end of file diff --git a/docs/models/projectresponse.md b/docs/models/projectresponse.md index f32901d..60da782 100644 --- a/docs/models/projectresponse.md +++ b/docs/models/projectresponse.md @@ -8,7 +8,7 @@ | `id_project` | *str* | :heavy_check_mark: | Unique identifier for the project | 123e4567-e89b-12d3-a456-426614174000 | | `name` | *str* | :heavy_check_mark: | Name of the project | My Project | | `sync_mode` | *str* | :heavy_check_mark: | Synchronization mode of the project | automatic | +| `pull_frequency` | *float* | :heavy_check_mark: | Frequency of pulling data in seconds | 3600 | +| `redirect_url` | *str* | :heavy_check_mark: | Redirect URL for the project | https://example.com/redirect | | `id_user` | *str* | :heavy_check_mark: | User ID associated with the project | 123e4567-e89b-12d3-a456-426614174001 | -| `id_connector_set` | *str* | :heavy_check_mark: | Connector set ID associated with the project | 123e4567-e89b-12d3-a456-426614174002 | -| `pull_frequency` | *Optional[float]* | :heavy_minus_sign: | Frequency of pulling data in seconds | 3600 | -| `redirect_url` | *Optional[str]* | :heavy_minus_sign: | Redirect URL for the project | https://example.com/redirect | \ No newline at end of file +| `id_connector_set` | *str* | :heavy_check_mark: | Connector set ID associated with the project | 123e4567-e89b-12d3-a456-426614174002 | \ No newline at end of file diff --git a/docs/models/querybody.md b/docs/models/querybody.md index ca13c98..5bf976c 100644 --- a/docs/models/querybody.md +++ b/docs/models/querybody.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `query` | *str* | :heavy_check_mark: | The query you want to received embeddings adn chunks for | When does Panora incorporated? | +| `query` | *str* | :heavy_check_mark: | The query you want to received embeddings and chunks for | When does Panora incorporated? | | `top_k` | *OptionalNullable[float]* | :heavy_minus_sign: | The number of most appropriate documents for your query. | 3 | \ No newline at end of file diff --git a/docs/models/queryresponsebody.md b/docs/models/queryresponsebody.md deleted file mode 100644 index 52210cc..0000000 --- a/docs/models/queryresponsebody.md +++ /dev/null @@ -1,7 +0,0 @@ -# QueryResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/ragqueryoutput.md b/docs/models/ragqueryoutput.md new file mode 100644 index 0000000..1572c36 --- /dev/null +++ b/docs/models/ragqueryoutput.md @@ -0,0 +1,11 @@ +# RagQueryOutput + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | +| `chunk` | *str* | :heavy_check_mark: | The chunk which matches the embed query | Date : 06/07/2023 | +| `metadata` | Dict[str, *Any*] | :heavy_check_mark: | The metadata tied to the chunk | {
"blobType": "",
"text": "ATTESTATION"
} | +| `score` | *Nullable[float]* | :heavy_check_mark: | The score | 0.87 | +| `embedding` | List[*float*] | :heavy_check_mark: | The embedding of the relevant chunk | [
-0.00442447886,
-0.00116857514,
0.00869117491,
-0.0361584462,
-0.00220073434,
0.00946036354,
-0.0101112155
] | \ No newline at end of file diff --git a/docs/models/remotedata.md b/docs/models/remotedata.md index 7eccb0d..a5555a1 100644 --- a/docs/models/remotedata.md +++ b/docs/models/remotedata.md @@ -1,6 +1,6 @@ # RemoteData -The remote data of the bank info in the context of the 3rd Party +The remote data of the account in the context of the 3rd Party ## Fields diff --git a/docs/models/requestpassthroughresponsebody.md b/docs/models/requestpassthroughresponsebody.md deleted file mode 100644 index 19955c6..0000000 --- a/docs/models/requestpassthroughresponsebody.md +++ /dev/null @@ -1,7 +0,0 @@ -# RequestPassthroughResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/requestresponse.md b/docs/models/requestresponse.md deleted file mode 100644 index 6ae777e..0000000 --- a/docs/models/requestresponse.md +++ /dev/null @@ -1,17 +0,0 @@ -# RequestResponse - - -## Supported Types - -### `models.RequestResponseBody` - -```python -value: models.RequestResponseBody = /* values here */ -``` - -### `models.RequestPassthroughResponseBody` - -```python -value: models.RequestPassthroughResponseBody = /* values here */ -``` - diff --git a/docs/models/retrieveatsactivityrequest.md b/docs/models/retrieveatsactivityrequest.md deleted file mode 100644 index 3f76103..0000000 --- a/docs/models/retrieveatsactivityrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsActivityRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the activity you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsapplicationrequest.md b/docs/models/retrieveatsapplicationrequest.md deleted file mode 100644 index 3ef6949..0000000 --- a/docs/models/retrieveatsapplicationrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsApplicationRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the application you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsattachmentrequest.md b/docs/models/retrieveatsattachmentrequest.md deleted file mode 100644 index 550a456..0000000 --- a/docs/models/retrieveatsattachmentrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsAttachmentRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the attachment you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatscandidaterequest.md b/docs/models/retrieveatscandidaterequest.md deleted file mode 100644 index 25f7b08..0000000 --- a/docs/models/retrieveatscandidaterequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsCandidateRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the candidate you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsdepartmentrequest.md b/docs/models/retrieveatsdepartmentrequest.md deleted file mode 100644 index f46cd54..0000000 --- a/docs/models/retrieveatsdepartmentrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsDepartmentRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the department you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatseeocsrequest.md b/docs/models/retrieveatseeocsrequest.md deleted file mode 100644 index 42abe28..0000000 --- a/docs/models/retrieveatseeocsrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsEeocsRequest - - -## Fields - -| Field | Type | Required | Description | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `id` | *str* | :heavy_check_mark: | id of the eeocs you want to retrieve. | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | \ No newline at end of file diff --git a/docs/models/retrieveatsinterviewrequest.md b/docs/models/retrieveatsinterviewrequest.md deleted file mode 100644 index c00a617..0000000 --- a/docs/models/retrieveatsinterviewrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsInterviewRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the interview you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsjobinterviewstagerequest.md b/docs/models/retrieveatsjobinterviewstagerequest.md deleted file mode 100644 index 4a377a2..0000000 --- a/docs/models/retrieveatsjobinterviewstagerequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsJobInterviewStageRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the jobinterviewstage you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsjobrequest.md b/docs/models/retrieveatsjobrequest.md deleted file mode 100644 index ddfd683..0000000 --- a/docs/models/retrieveatsjobrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsJobRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the job you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsofferrequest.md b/docs/models/retrieveatsofferrequest.md deleted file mode 100644 index 49c6303..0000000 --- a/docs/models/retrieveatsofferrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsOfferRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the offer you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsofficerequest.md b/docs/models/retrieveatsofficerequest.md deleted file mode 100644 index 3147b42..0000000 --- a/docs/models/retrieveatsofficerequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsOfficeRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the office you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsrejectreasonrequest.md b/docs/models/retrieveatsrejectreasonrequest.md deleted file mode 100644 index 4f09b11..0000000 --- a/docs/models/retrieveatsrejectreasonrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsRejectReasonRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the rejectreason you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsscorecardrequest.md b/docs/models/retrieveatsscorecardrequest.md deleted file mode 100644 index b848d2e..0000000 --- a/docs/models/retrieveatsscorecardrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsScorecardRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the scorecard you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatstagrequest.md b/docs/models/retrieveatstagrequest.md deleted file mode 100644 index c801f5c..0000000 --- a/docs/models/retrieveatstagrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsTagRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the tag you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrieveatsuserrequest.md b/docs/models/retrieveatsuserrequest.md deleted file mode 100644 index 9d2f2fa..0000000 --- a/docs/models/retrieveatsuserrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveAtsUserRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the user you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisbankinforequest.md b/docs/models/retrievehrisbankinforequest.md deleted file mode 100644 index 0eb2ed3..0000000 --- a/docs/models/retrievehrisbankinforequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisBankInfoRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the bank info you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisbenefitrequest.md b/docs/models/retrievehrisbenefitrequest.md deleted file mode 100644 index 407ab33..0000000 --- a/docs/models/retrievehrisbenefitrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisBenefitRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the benefit you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehriscompanyrequest.md b/docs/models/retrievehriscompanyrequest.md deleted file mode 100644 index d69de52..0000000 --- a/docs/models/retrievehriscompanyrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisCompanyRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the company you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisdependentrequest.md b/docs/models/retrievehrisdependentrequest.md deleted file mode 100644 index 72b2b31..0000000 --- a/docs/models/retrievehrisdependentrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisDependentRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the dependent you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisemployeepayrollrunrequest.md b/docs/models/retrievehrisemployeepayrollrunrequest.md deleted file mode 100644 index 5723a5d..0000000 --- a/docs/models/retrievehrisemployeepayrollrunrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisEmployeePayrollRunRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employeepayrollrun you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisemployeerequest.md b/docs/models/retrievehrisemployeerequest.md deleted file mode 100644 index 0d62e99..0000000 --- a/docs/models/retrievehrisemployeerequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisEmployeeRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employee you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisemployerbenefitrequest.md b/docs/models/retrievehrisemployerbenefitrequest.md deleted file mode 100644 index a6fb1f7..0000000 --- a/docs/models/retrievehrisemployerbenefitrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisEmployerBenefitRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employer benefit you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisemploymentrequest.md b/docs/models/retrievehrisemploymentrequest.md deleted file mode 100644 index 3e3f340..0000000 --- a/docs/models/retrievehrisemploymentrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisEmploymentRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employment you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrisgrouprequest.md b/docs/models/retrievehrisgrouprequest.md deleted file mode 100644 index f5aa210..0000000 --- a/docs/models/retrievehrisgrouprequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisGroupRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the group you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrislocationrequest.md b/docs/models/retrievehrislocationrequest.md deleted file mode 100644 index d107ac4..0000000 --- a/docs/models/retrievehrislocationrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisLocationRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the location you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrispaygrouprequest.md b/docs/models/retrievehrispaygrouprequest.md deleted file mode 100644 index c015659..0000000 --- a/docs/models/retrievehrispaygrouprequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisPaygroupRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the paygroup you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehrispayrollrunrequest.md b/docs/models/retrievehrispayrollrunrequest.md deleted file mode 100644 index ebf7b3f..0000000 --- a/docs/models/retrievehrispayrollrunrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisPayrollRunRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the payroll run you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehristimeoffbalancerequest.md b/docs/models/retrievehristimeoffbalancerequest.md deleted file mode 100644 index 5d09936..0000000 --- a/docs/models/retrievehristimeoffbalancerequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisTimeoffbalanceRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the timeoffbalance you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehristimeoffrequest.md b/docs/models/retrievehristimeoffrequest.md deleted file mode 100644 index 582293a..0000000 --- a/docs/models/retrievehristimeoffrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisTimeoffRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the time off you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/retrievehristimesheetentryrequest.md b/docs/models/retrievehristimesheetentryrequest.md deleted file mode 100644 index f027021..0000000 --- a/docs/models/retrievehristimesheetentryrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# RetrieveHrisTimesheetentryRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the timesheetentry you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | \ No newline at end of file diff --git a/docs/models/taxitem.md b/docs/models/taxitem.md deleted file mode 100644 index fe690c8..0000000 --- a/docs/models/taxitem.md +++ /dev/null @@ -1,10 +0,0 @@ -# TaxItem - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the tax | Federal Income Tax | -| `amount` | *OptionalNullable[float]* | :heavy_minus_sign: | The amount of the tax | 250 | -| `employer_tax` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if this is an employer tax | true | \ No newline at end of file diff --git a/docs/models/unifiedaccountingaccountoutput.md b/docs/models/unifiedaccountingaccountoutput.md index 6a205e0..2d0cfc7 100644 --- a/docs/models/unifiedaccountingaccountoutput.md +++ b/docs/models/unifiedaccountingaccountoutput.md @@ -3,21 +3,21 @@ ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the account | Cash | -| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | A description of the account | Main cash account for daily operations | -| `classification` | *OptionalNullable[str]* | :heavy_minus_sign: | The classification of the account | Asset | -| `type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the account | Current Asset | -| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the account | Active | -| `current_balance` | *OptionalNullable[float]* | :heavy_minus_sign: | The current balance of the account | 10000 | -| `currency` | *OptionalNullable[str]* | :heavy_minus_sign: | The currency of the account | USD | -| `account_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The account number | 1000 | -| `parent_account` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the parent account | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `company_info_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated company info | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.UnifiedAccountingAccountOutputFieldMappings]](../models/unifiedaccountingaccountoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the account record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the account in the context of the 3rd Party | account_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedAccountingAccountOutputRemoteData]](../models/unifiedaccountingaccountoutputremotedata.md) | :heavy_minus_sign: | The remote data of the account in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the account record | 2024-06-15T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the account record | 2024-06-15T12:00:00Z | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | +| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the account | Cash | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | A description of the account | Main cash account for daily operations | +| `classification` | *OptionalNullable[str]* | :heavy_minus_sign: | The classification of the account | Asset | +| `type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the account | Current Asset | +| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the account | Active | +| `current_balance` | *OptionalNullable[float]* | :heavy_minus_sign: | The current balance of the account | 10000 | +| `currency` | *OptionalNullable[str]* | :heavy_minus_sign: | The currency of the account | USD | +| `account_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The account number | 1000 | +| `parent_account` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the parent account | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | +| `company_info_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated company info | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | +| `field_mappings` | [OptionalNullable[models.FieldMappingsModel]](../models/fieldmappingsmodel.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | +| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the account record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | +| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the account in the context of the 3rd Party | account_1234 | +| `remote_data` | [OptionalNullable[models.RemoteData]](../models/remotedata.md) | :heavy_minus_sign: | The remote data of the account in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | +| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the account record | 2024-06-15T12:00:00Z | +| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the account record | 2024-06-15T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedaccountingaccountoutputfieldmappings.md b/docs/models/unifiedaccountingaccountoutputfieldmappings.md deleted file mode 100644 index 332aedc..0000000 --- a/docs/models/unifiedaccountingaccountoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedAccountingAccountOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedaccountingaccountoutputremotedata.md b/docs/models/unifiedaccountingaccountoutputremotedata.md deleted file mode 100644 index e4ce7f2..0000000 --- a/docs/models/unifiedaccountingaccountoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedAccountingAccountOutputRemoteData - -The remote data of the account in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedaccountingbalancesheetoutput.md b/docs/models/unifiedaccountingbalancesheetoutput.md index 6c7a028..485eee9 100644 --- a/docs/models/unifiedaccountingbalancesheetoutput.md +++ b/docs/models/unifiedaccountingbalancesheetoutput.md @@ -8,7 +8,7 @@ | `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the balance sheet | Q2 2024 Balance Sheet | | `currency` | *OptionalNullable[str]* | :heavy_minus_sign: | The currency used in the balance sheet | USD | | `company_info_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated company info | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date of the balance sheet | 2024-06-30T23:59:59Z | +| `date_` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date of the balance sheet | 2024-06-30T23:59:59Z | | `net_assets` | *OptionalNullable[float]* | :heavy_minus_sign: | The net assets value | 1000000 | | `assets` | List[*str*] | :heavy_minus_sign: | The list of assets | [
"Cash",
"Accounts Receivable",
"Inventory"
] | | `liabilities` | List[*str*] | :heavy_minus_sign: | The list of liabilities | [
"Accounts Payable",
"Long-term Debt"
] | diff --git a/docs/models/unifiedatsactivityinput.md b/docs/models/unifiedatsactivityinput.md deleted file mode 100644 index 521b962..0000000 --- a/docs/models/unifiedatsactivityinput.md +++ /dev/null @@ -1,14 +0,0 @@ -# UnifiedAtsActivityInput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `activity_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of activity. NOTE, EMAIL or OTHER | NOTE | -| `subject` | *OptionalNullable[str]* | :heavy_minus_sign: | The subject of the activity | Email subject | -| `body` | *OptionalNullable[str]* | :heavy_minus_sign: | The body of the activity | Dear Diana, I love you | -| `visibility` | *OptionalNullable[str]* | :heavy_minus_sign: | The visibility of the activity. ADMIN_ONLY, PUBLIC or PRIVATE | PUBLIC | -| `candidate_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the activity | 2024-10-01T12:00:00Z | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | \ No newline at end of file diff --git a/docs/models/unifiedatsactivityoutput.md b/docs/models/unifiedatsactivityoutput.md deleted file mode 100644 index e2641da..0000000 --- a/docs/models/unifiedatsactivityoutput.md +++ /dev/null @@ -1,19 +0,0 @@ -# UnifiedAtsActivityOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `activity_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of activity. NOTE, EMAIL or OTHER | NOTE | -| `subject` | *OptionalNullable[str]* | :heavy_minus_sign: | The subject of the activity | Email subject | -| `body` | *OptionalNullable[str]* | :heavy_minus_sign: | The body of the activity | Dear Diana, I love you | -| `visibility` | *OptionalNullable[str]* | :heavy_minus_sign: | The visibility of the activity. ADMIN_ONLY, PUBLIC or PRIVATE | PUBLIC | -| `candidate_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the activity | 2024-10-01T12:00:00Z | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the activity | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the activity in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the activity in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsapplicationinput.md b/docs/models/unifiedatsapplicationinput.md deleted file mode 100644 index 81eb389..0000000 --- a/docs/models/unifiedatsapplicationinput.md +++ /dev/null @@ -1,17 +0,0 @@ -# UnifiedAtsApplicationInput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `applied_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The application date | 2024-10-01T12:00:00Z | -| `rejected_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The rejection date | 2024-10-01T12:00:00Z | -| `offers` | List[*str*] | :heavy_minus_sign: | The offers UUIDs for the application | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f",
"12345678-1234-1234-1234-123456789012"
] | -| `source` | *OptionalNullable[str]* | :heavy_minus_sign: | The source of the application | Source Name | -| `credited_to` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the person credited for the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `current_stage` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the current stage of the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `reject_reason` | *OptionalNullable[str]* | :heavy_minus_sign: | The rejection reason for the application | Candidate not experienced enough | -| `candidate_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `job_id` | *Optional[str]* | :heavy_minus_sign: | The UUID of the job | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | \ No newline at end of file diff --git a/docs/models/unifiedatsapplicationoutput.md b/docs/models/unifiedatsapplicationoutput.md deleted file mode 100644 index 3aca8a2..0000000 --- a/docs/models/unifiedatsapplicationoutput.md +++ /dev/null @@ -1,24 +0,0 @@ -# UnifiedAtsApplicationOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `applied_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The application date | 2024-10-01T12:00:00Z | -| `rejected_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The rejection date | 2024-10-01T12:00:00Z | -| `offers` | List[*str*] | :heavy_minus_sign: | The offers UUIDs for the application | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f",
"12345678-1234-1234-1234-123456789012"
] | -| `source` | *OptionalNullable[str]* | :heavy_minus_sign: | The source of the application | Source Name | -| `credited_to` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the person credited for the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `current_stage` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the current stage of the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `reject_reason` | *OptionalNullable[str]* | :heavy_minus_sign: | The rejection reason for the application | Candidate not experienced enough | -| `candidate_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `job_id` | *Optional[str]* | :heavy_minus_sign: | The UUID of the job | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the application in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the application in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote created date of the object | | -| `remote_modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modified date of the object | | \ No newline at end of file diff --git a/docs/models/unifiedatsattachmentinput.md b/docs/models/unifiedatsattachmentinput.md deleted file mode 100644 index e25be8f..0000000 --- a/docs/models/unifiedatsattachmentinput.md +++ /dev/null @@ -1,14 +0,0 @@ -# UnifiedAtsAttachmentInput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `file_url` | *OptionalNullable[str]* | :heavy_minus_sign: | The URL of the file | https://example.com/file.pdf | -| `file_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the file | file.pdf | -| `attachment_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the file | RESUME | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the attachment | 2024-10-01T12:00:00Z | -| `remote_modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the attachment | 2024-10-01T12:00:00Z | -| `candidate_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | \ No newline at end of file diff --git a/docs/models/unifiedatsattachmentoutput.md b/docs/models/unifiedatsattachmentoutput.md deleted file mode 100644 index 4c17b1c..0000000 --- a/docs/models/unifiedatsattachmentoutput.md +++ /dev/null @@ -1,19 +0,0 @@ -# UnifiedAtsAttachmentOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `file_url` | *OptionalNullable[str]* | :heavy_minus_sign: | The URL of the file | https://example.com/file.pdf | -| `file_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the file | file.pdf | -| `attachment_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the file | RESUME | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the attachment | 2024-10-01T12:00:00Z | -| `remote_modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the attachment | 2024-10-01T12:00:00Z | -| `candidate_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the attachment | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the attachment | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the attachment in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatscandidateinput.md b/docs/models/unifiedatscandidateinput.md deleted file mode 100644 index 21af8fd..0000000 --- a/docs/models/unifiedatscandidateinput.md +++ /dev/null @@ -1,24 +0,0 @@ -# UnifiedAtsCandidateInput - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `first_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The first name of the candidate | Joe | -| `last_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The last name of the candidate | Doe | -| `company` | *OptionalNullable[str]* | :heavy_minus_sign: | The company of the candidate | Acme | -| `title` | *OptionalNullable[str]* | :heavy_minus_sign: | The title of the candidate | Analyst | -| `locations` | *OptionalNullable[str]* | :heavy_minus_sign: | The locations of the candidate | New York | -| `is_private` | *OptionalNullable[bool]* | :heavy_minus_sign: | Whether the candidate is private | false | -| `email_reachable` | *OptionalNullable[bool]* | :heavy_minus_sign: | Whether the candidate is reachable by email | true | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the candidate | 2024-10-01T12:00:00Z | -| `remote_modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the candidate | 2024-10-01T12:00:00Z | -| `last_interaction_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last interaction date with the candidate | 2024-10-01T12:00:00Z | -| `attachments` | List[[models.UnifiedAtsCandidateInputAttachments](../models/unifiedatscandidateinputattachments.md)] | :heavy_minus_sign: | The attachments UUIDs of the candidate | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `applications` | List[[models.UnifiedAtsCandidateInputApplications](../models/unifiedatscandidateinputapplications.md)] | :heavy_minus_sign: | The applications UUIDs of the candidate | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `tags` | List[[models.UnifiedAtsCandidateInputTags](../models/unifiedatscandidateinputtags.md)] | :heavy_minus_sign: | The tags of the candidate | [
"tag_1",
"tag_2"
] | -| `urls` | List[[models.URL](../models/url.md)] | :heavy_minus_sign: | The urls of the candidate, possible values for Url type are WEBSITE, BLOG, LINKEDIN, GITHUB, or OTHER | [
{
"url": "mywebsite.com",
"url_type": "WEBSITE"
}
] | -| `phone_numbers` | List[[models.Phone](../models/phone.md)] | :heavy_minus_sign: | The phone numbers of the candidate | [
{
"phone_number": "+33660688899",
"phone_type": "WORK"
}
] | -| `email_addresses` | List[[models.Email](../models/email.md)] | :heavy_minus_sign: | The email addresses of the candidate | [
{
"email_address": "joedoe@gmail.com",
"email_address_type": "WORK"
}
] | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | \ No newline at end of file diff --git a/docs/models/unifiedatscandidateinputapplications.md b/docs/models/unifiedatscandidateinputapplications.md deleted file mode 100644 index aa505e9..0000000 --- a/docs/models/unifiedatscandidateinputapplications.md +++ /dev/null @@ -1,17 +0,0 @@ -# UnifiedAtsCandidateInputApplications - - -## Supported Types - -### `str` - -```python -value: str = /* values here */ -``` - -### `models.UnifiedAtsApplicationOutput` - -```python -value: models.UnifiedAtsApplicationOutput = /* values here */ -``` - diff --git a/docs/models/unifiedatscandidateinputattachments.md b/docs/models/unifiedatscandidateinputattachments.md deleted file mode 100644 index 16e1243..0000000 --- a/docs/models/unifiedatscandidateinputattachments.md +++ /dev/null @@ -1,17 +0,0 @@ -# UnifiedAtsCandidateInputAttachments - - -## Supported Types - -### `str` - -```python -value: str = /* values here */ -``` - -### `models.UnifiedAtsAttachmentOutput` - -```python -value: models.UnifiedAtsAttachmentOutput = /* values here */ -``` - diff --git a/docs/models/unifiedatscandidateinputtags.md b/docs/models/unifiedatscandidateinputtags.md deleted file mode 100644 index 31c2ae8..0000000 --- a/docs/models/unifiedatscandidateinputtags.md +++ /dev/null @@ -1,17 +0,0 @@ -# UnifiedAtsCandidateInputTags - - -## Supported Types - -### `str` - -```python -value: str = /* values here */ -``` - -### `models.UnifiedAtsTagOutput` - -```python -value: models.UnifiedAtsTagOutput = /* values here */ -``` - diff --git a/docs/models/unifiedatscandidateoutput.md b/docs/models/unifiedatscandidateoutput.md deleted file mode 100644 index f881758..0000000 --- a/docs/models/unifiedatscandidateoutput.md +++ /dev/null @@ -1,29 +0,0 @@ -# UnifiedAtsCandidateOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `first_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The first name of the candidate | Joe | -| `last_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The last name of the candidate | Doe | -| `company` | *OptionalNullable[str]* | :heavy_minus_sign: | The company of the candidate | Acme | -| `title` | *OptionalNullable[str]* | :heavy_minus_sign: | The title of the candidate | Analyst | -| `locations` | *OptionalNullable[str]* | :heavy_minus_sign: | The locations of the candidate | New York | -| `is_private` | *OptionalNullable[bool]* | :heavy_minus_sign: | Whether the candidate is private | false | -| `email_reachable` | *OptionalNullable[bool]* | :heavy_minus_sign: | Whether the candidate is reachable by email | true | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the candidate | 2024-10-01T12:00:00Z | -| `remote_modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the candidate | 2024-10-01T12:00:00Z | -| `last_interaction_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last interaction date with the candidate | 2024-10-01T12:00:00Z | -| `attachments` | List[[models.UnifiedAtsCandidateOutputAttachments](../models/unifiedatscandidateoutputattachments.md)] | :heavy_minus_sign: | The attachments UUIDs of the candidate | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `applications` | List[[models.ApplicationsModel](../models/applicationsmodel.md)] | :heavy_minus_sign: | The applications UUIDs of the candidate | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `tags` | List[[models.UnifiedAtsCandidateOutputTags](../models/unifiedatscandidateoutputtags.md)] | :heavy_minus_sign: | The tags of the candidate | [
"tag_1",
"tag_2"
] | -| `urls` | List[[models.URL](../models/url.md)] | :heavy_minus_sign: | The urls of the candidate, possible values for Url type are WEBSITE, BLOG, LINKEDIN, GITHUB, or OTHER | [
{
"url": "mywebsite.com",
"url_type": "WEBSITE"
}
] | -| `phone_numbers` | List[[models.Phone](../models/phone.md)] | :heavy_minus_sign: | The phone numbers of the candidate | [
{
"phone_number": "+33660688899",
"phone_type": "WORK"
}
] | -| `email_addresses` | List[[models.Email](../models/email.md)] | :heavy_minus_sign: | The email addresses of the candidate | [
{
"email_address": "joedoe@gmail.com",
"email_address_type": "WORK"
}
] | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The id of the candidate in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the candidate in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatscandidateoutputattachments.md b/docs/models/unifiedatscandidateoutputattachments.md deleted file mode 100644 index 9fa8980..0000000 --- a/docs/models/unifiedatscandidateoutputattachments.md +++ /dev/null @@ -1,17 +0,0 @@ -# UnifiedAtsCandidateOutputAttachments - - -## Supported Types - -### `str` - -```python -value: str = /* values here */ -``` - -### `models.UnifiedAtsAttachmentOutput` - -```python -value: models.UnifiedAtsAttachmentOutput = /* values here */ -``` - diff --git a/docs/models/unifiedatscandidateoutputtags.md b/docs/models/unifiedatscandidateoutputtags.md deleted file mode 100644 index 8de5bfd..0000000 --- a/docs/models/unifiedatscandidateoutputtags.md +++ /dev/null @@ -1,17 +0,0 @@ -# UnifiedAtsCandidateOutputTags - - -## Supported Types - -### `str` - -```python -value: str = /* values here */ -``` - -### `models.UnifiedAtsTagOutput` - -```python -value: models.UnifiedAtsTagOutput = /* values here */ -``` - diff --git a/docs/models/unifiedatsdepartmentoutput.md b/docs/models/unifiedatsdepartmentoutput.md deleted file mode 100644 index aeb4ba1..0000000 --- a/docs/models/unifiedatsdepartmentoutput.md +++ /dev/null @@ -1,14 +0,0 @@ -# UnifiedAtsDepartmentOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the department | Sales | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the department | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the department in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the department in the context of the 3rd Party | {
"key1": "value1",
"key2": 42,
"key3": true
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2023-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatseeocsoutput.md b/docs/models/unifiedatseeocsoutput.md deleted file mode 100644 index 587962d..0000000 --- a/docs/models/unifiedatseeocsoutput.md +++ /dev/null @@ -1,19 +0,0 @@ -# UnifiedAtsEeocsOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `candidate_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `submitted_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The submission date of the EEOC | 2024-10-01T12:00:00Z | -| `race` | *OptionalNullable[str]* | :heavy_minus_sign: | The race of the candidate | AMERICAN_INDIAN_OR_ALASKAN_NATIVE | -| `gender` | *OptionalNullable[str]* | :heavy_minus_sign: | The gender of the candidate | MALE | -| `veteran_status` | *OptionalNullable[str]* | :heavy_minus_sign: | The veteran status of the candidate | I_AM_NOT_A_PROTECTED_VETERAN | -| `disability_status` | *OptionalNullable[str]* | :heavy_minus_sign: | The disability status of the candidate | YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the EEOC | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the EEOC in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the EEOC in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsinterviewinput.md b/docs/models/unifiedatsinterviewinput.md deleted file mode 100644 index c9e3736..0000000 --- a/docs/models/unifiedatsinterviewinput.md +++ /dev/null @@ -1,18 +0,0 @@ -# UnifiedAtsInterviewInput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the interview | SCHEDULED | -| `application_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `job_interview_stage_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the job interview stage | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `organized_by` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the organizer | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `interviewers` | List[*str*] | :heavy_minus_sign: | The UUIDs of the interviewers | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `location` | *OptionalNullable[str]* | :heavy_minus_sign: | The location of the interview | San Francisco | -| `start_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date and time of the interview | 2024-10-01T12:00:00Z | -| `end_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end date and time of the interview | 2024-10-01T12:00:00Z | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the interview | 2024-10-01T12:00:00Z | -| `remote_updated_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the interview | 2024-10-01T12:00:00Z | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | \ No newline at end of file diff --git a/docs/models/unifiedatsinterviewoutput.md b/docs/models/unifiedatsinterviewoutput.md deleted file mode 100644 index 69e2e21..0000000 --- a/docs/models/unifiedatsinterviewoutput.md +++ /dev/null @@ -1,23 +0,0 @@ -# UnifiedAtsInterviewOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the interview | SCHEDULED | -| `application_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `job_interview_stage_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the job interview stage | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `organized_by` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the organizer | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `interviewers` | List[*str*] | :heavy_minus_sign: | The UUIDs of the interviewers | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `location` | *OptionalNullable[str]* | :heavy_minus_sign: | The location of the interview | San Francisco | -| `start_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date and time of the interview | 2024-10-01T12:00:00Z | -| `end_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end date and time of the interview | 2024-10-01T12:00:00Z | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the interview | 2024-10-01T12:00:00Z | -| `remote_updated_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the interview | 2024-10-01T12:00:00Z | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the interview | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the interview in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the interview in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsjobinterviewstageoutput.md b/docs/models/unifiedatsjobinterviewstageoutput.md deleted file mode 100644 index dbc8791..0000000 --- a/docs/models/unifiedatsjobinterviewstageoutput.md +++ /dev/null @@ -1,16 +0,0 @@ -# UnifiedAtsJobinterviewstageOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the job interview stage | Second Call | -| `stage_order` | *OptionalNullable[float]* | :heavy_minus_sign: | The order of the stage | 1 | -| `job_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the job | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the job interview stage | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the job interview stage in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the job interview stage in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsjoboutput.md b/docs/models/unifiedatsjoboutput.md deleted file mode 100644 index 315dac5..0000000 --- a/docs/models/unifiedatsjoboutput.md +++ /dev/null @@ -1,25 +0,0 @@ -# UnifiedAtsJobOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the job | Financial Analyst | -| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | The description of the job | Extract financial data and write detailed investment thesis | -| `code` | *OptionalNullable[str]* | :heavy_minus_sign: | The code of the job | JOB123 | -| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the job | OPEN | -| `type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the job | POSTING | -| `confidential` | *OptionalNullable[bool]* | :heavy_minus_sign: | Whether the job is confidential | true | -| `departments` | List[*str*] | :heavy_minus_sign: | The departments UUIDs associated with the job | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `offices` | List[*str*] | :heavy_minus_sign: | The offices UUIDs associated with the job | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `managers` | List[*str*] | :heavy_minus_sign: | The managers UUIDs associated with the job | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `recruiters` | List[*str*] | :heavy_minus_sign: | The recruiters UUIDs associated with the job | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the job | 2024-10-01T12:00:00Z | -| `remote_updated_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the job | 2024-10-01T12:00:00Z | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the job | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the job in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the job in the context of the 3rd Party | {
"key1": "value1",
"key2": 42,
"key3": true
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2023-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsofferoutput.md b/docs/models/unifiedatsofferoutput.md deleted file mode 100644 index 67e9d5a..0000000 --- a/docs/models/unifiedatsofferoutput.md +++ /dev/null @@ -1,20 +0,0 @@ -# UnifiedAtsOfferOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `created_by` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the creator | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the offer | 2024-10-01T12:00:00Z | -| `closed_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The closing date of the offer | 2024-10-01T12:00:00Z | -| `sent_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The sending date of the offer | 2024-10-01T12:00:00Z | -| `start_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date of the offer | 2024-10-01T12:00:00Z | -| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the offer | DRAFT | -| `application_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the offer | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the offer in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the offer in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [OptionalNullable[models.UnifiedAtsOfferOutputCreatedAt]](../models/unifiedatsofferoutputcreatedat.md) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [OptionalNullable[models.UnifiedAtsOfferOutputModifiedAt]](../models/unifiedatsofferoutputmodifiedat.md) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsofferoutputcreatedat.md b/docs/models/unifiedatsofferoutputcreatedat.md deleted file mode 100644 index edd5213..0000000 --- a/docs/models/unifiedatsofferoutputcreatedat.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedAtsOfferOutputCreatedAt - -The created date of the object - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedatsofferoutputmodifiedat.md b/docs/models/unifiedatsofferoutputmodifiedat.md deleted file mode 100644 index 409dffa..0000000 --- a/docs/models/unifiedatsofferoutputmodifiedat.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedAtsOfferOutputModifiedAt - -The modified date of the object - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedatsofficeoutput.md b/docs/models/unifiedatsofficeoutput.md deleted file mode 100644 index 46fa463..0000000 --- a/docs/models/unifiedatsofficeoutput.md +++ /dev/null @@ -1,15 +0,0 @@ -# UnifiedAtsOfficeOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the office | Condo Office 5th | -| `location` | *OptionalNullable[str]* | :heavy_minus_sign: | The location of the office | New York | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *Optional[str]* | :heavy_minus_sign: | The UUID of the office | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the office in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the office in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsrejectreasonoutput.md b/docs/models/unifiedatsrejectreasonoutput.md deleted file mode 100644 index 2cfa410..0000000 --- a/docs/models/unifiedatsrejectreasonoutput.md +++ /dev/null @@ -1,14 +0,0 @@ -# UnifiedAtsRejectreasonOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the reject reason | Candidate inexperienced | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the reject reason | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the reject reason in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the reject reason in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsscorecardoutput.md b/docs/models/unifiedatsscorecardoutput.md deleted file mode 100644 index 2d0ef62..0000000 --- a/docs/models/unifiedatsscorecardoutput.md +++ /dev/null @@ -1,18 +0,0 @@ -# UnifiedAtsScorecardOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `overall_recommendation` | *OptionalNullable[str]* | :heavy_minus_sign: | The overall recommendation | YES | -| `application_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the application | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `interview_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the interview | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the scorecard | 2024-10-01T12:00:00Z | -| `submitted_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The submission date of the scorecard | 2024-10-01T12:00:00Z | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *Optional[str]* | :heavy_minus_sign: | The UUID of the scorecard | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the scorecard in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the scorecard in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatstagoutput.md b/docs/models/unifiedatstagoutput.md deleted file mode 100644 index 61c3fc2..0000000 --- a/docs/models/unifiedatstagoutput.md +++ /dev/null @@ -1,15 +0,0 @@ -# UnifiedAtsTagOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the tag | Important | -| `id_ats_candidate` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the candidate | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the tag | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the tag in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the tag in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The creation date of the tag | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modification date of the tag | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedatsuseroutput.md b/docs/models/unifiedatsuseroutput.md deleted file mode 100644 index 0787656..0000000 --- a/docs/models/unifiedatsuseroutput.md +++ /dev/null @@ -1,20 +0,0 @@ -# UnifiedAtsUserOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `first_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The first name of the user | John | -| `last_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The last name of the user | Doe | -| `email` | *OptionalNullable[str]* | :heavy_minus_sign: | The email of the user | john.doe@example.com | -| `disabled` | *OptionalNullable[bool]* | :heavy_minus_sign: | Whether the user is disabled | false | -| `access_role` | *OptionalNullable[str]* | :heavy_minus_sign: | The access role of the user | ADMIN | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote creation date of the user | 2024-10-01T12:00:00Z | -| `remote_modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The remote modification date of the user | 2024-10-01T12:00:00Z | -| `field_mappings` | Dict[str, *Any*] | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the user | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the user in the context of the 3rd Party | id_1 | -| `remote_data` | Dict[str, *Any*] | :heavy_minus_sign: | The remote data of the user in the context of the 3rd Party | {
"fav_dish": "broccoli",
"fav_color": "red"
} | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the object | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The modified date of the object | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedhrisbankinfooutput.md b/docs/models/unifiedhrisbankinfooutput.md deleted file mode 100644 index 32ee2d6..0000000 --- a/docs/models/unifiedhrisbankinfooutput.md +++ /dev/null @@ -1,20 +0,0 @@ -# UnifiedHrisBankinfoOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `id` | *Nullable[str]* | :heavy_check_mark: | The UUID of the bank info record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_check_mark: | The created date of the bank info record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_check_mark: | The last modified date of the bank info record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *Nullable[bool]* | :heavy_check_mark: | Indicates if the bank info was deleted in the remote system | false | -| `account_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the bank account | CHECKING | -| `bank_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the bank | Bank of America | -| `account_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The account number | 1234567890 | -| `routing_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The routing number of the bank | 021000021 | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.FieldMappingsModel]](../models/fieldmappingsmodel.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the bank info in the context of the 3rd Party | id_1 | -| `remote_data` | [OptionalNullable[models.RemoteData]](../models/remotedata.md) | :heavy_minus_sign: | The remote data of the bank info in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the bank info was created in the 3rd party system | 2024-10-01T12:00:00Z | \ No newline at end of file diff --git a/docs/models/unifiedhrisbenefitoutput.md b/docs/models/unifiedhrisbenefitoutput.md deleted file mode 100644 index c46c2b2..0000000 --- a/docs/models/unifiedhrisbenefitoutput.md +++ /dev/null @@ -1,22 +0,0 @@ -# UnifiedHrisBenefitOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `provider_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the benefit provider | Health Insurance Provider | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `employee_contribution` | *OptionalNullable[float]* | :heavy_minus_sign: | The employee contribution amount | 100 | -| `company_contribution` | *OptionalNullable[float]* | :heavy_minus_sign: | The company contribution amount | 200 | -| `start_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date of the benefit | 2024-01-01T00:00:00Z | -| `end_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end date of the benefit | 2024-12-31T23:59:59Z | -| `employer_benefit_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employer benefit | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisBenefitOutputFieldMappings]](../models/unifiedhrisbenefitoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the benefit record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the benefit in the context of the 3rd Party | benefit_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisBenefitOutputRemoteData]](../models/unifiedhrisbenefitoutputremotedata.md) | :heavy_minus_sign: | The remote data of the benefit in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the benefit was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the benefit record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the benefit record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the benefit was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrisbenefitoutputfieldmappings.md b/docs/models/unifiedhrisbenefitoutputfieldmappings.md deleted file mode 100644 index bfa0ba7..0000000 --- a/docs/models/unifiedhrisbenefitoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisBenefitOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisbenefitoutputremotedata.md b/docs/models/unifiedhrisbenefitoutputremotedata.md deleted file mode 100644 index 70d1765..0000000 --- a/docs/models/unifiedhrisbenefitoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisBenefitOutputRemoteData - -The remote data of the benefit in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhriscompanyoutput.md b/docs/models/unifiedhriscompanyoutput.md deleted file mode 100644 index 37e8ecf..0000000 --- a/docs/models/unifiedhriscompanyoutput.md +++ /dev/null @@ -1,19 +0,0 @@ -# UnifiedHrisCompanyOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `legal_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The legal name of the company | Acme Corporation | -| `locations` | List[*str*] | :heavy_minus_sign: | UUIDs of the of the Location associated with the company | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `display_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The display name of the company | Acme Corp | -| `eins` | List[*str*] | :heavy_minus_sign: | The Employer Identification Numbers (EINs) of the company | [
"12-3456789",
"98-7654321"
] | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisCompanyOutputFieldMappings]](../models/unifiedhriscompanyoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the company record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the company in the context of the 3rd Party | company_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisCompanyOutputRemoteData]](../models/unifiedhriscompanyoutputremotedata.md) | :heavy_minus_sign: | The remote data of the company in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the company was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the company record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the company record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the company was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhriscompanyoutputfieldmappings.md b/docs/models/unifiedhriscompanyoutputfieldmappings.md deleted file mode 100644 index 19f6bef..0000000 --- a/docs/models/unifiedhriscompanyoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisCompanyOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhriscompanyoutputremotedata.md b/docs/models/unifiedhriscompanyoutputremotedata.md deleted file mode 100644 index 79cf916..0000000 --- a/docs/models/unifiedhriscompanyoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisCompanyOutputRemoteData - -The remote data of the company in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisdependentoutput.md b/docs/models/unifiedhrisdependentoutput.md deleted file mode 100644 index 5d0c856..0000000 --- a/docs/models/unifiedhrisdependentoutput.md +++ /dev/null @@ -1,26 +0,0 @@ -# UnifiedHrisDependentOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `first_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The first name of the dependent | John | -| `last_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The last name of the dependent | Doe | -| `middle_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The middle name of the dependent | Michael | -| `relationship` | *OptionalNullable[str]* | :heavy_minus_sign: | The relationship of the dependent to the employee | CHILD | -| `date_of_birth` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date of birth of the dependent | 2020-01-01 | -| `gender` | *OptionalNullable[str]* | :heavy_minus_sign: | The gender of the dependent | MALE | -| `phone_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The phone number of the dependent | +1234567890 | -| `home_location` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the home location | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `is_student` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the dependent is a student | true | -| `ssn` | *OptionalNullable[str]* | :heavy_minus_sign: | The Social Security Number of the dependent | 123-45-6789 | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisDependentOutputFieldMappings]](../models/unifiedhrisdependentoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the dependent record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the dependent in the context of the 3rd Party | dependent_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisDependentOutputRemoteData]](../models/unifiedhrisdependentoutputremotedata.md) | :heavy_minus_sign: | The remote data of the dependent in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the dependent was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the dependent record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the dependent record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the dependent was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrisdependentoutputfieldmappings.md b/docs/models/unifiedhrisdependentoutputfieldmappings.md deleted file mode 100644 index b8b3944..0000000 --- a/docs/models/unifiedhrisdependentoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisDependentOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisdependentoutputremotedata.md b/docs/models/unifiedhrisdependentoutputremotedata.md deleted file mode 100644 index df04b7a..0000000 --- a/docs/models/unifiedhrisdependentoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisDependentOutputRemoteData - -The remote data of the dependent in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeeinput.md b/docs/models/unifiedhrisemployeeinput.md deleted file mode 100644 index 5cb3e06..0000000 --- a/docs/models/unifiedhrisemployeeinput.md +++ /dev/null @@ -1,31 +0,0 @@ -# UnifiedHrisEmployeeInput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `groups` | List[*str*] | :heavy_minus_sign: | The groups the employee belongs to | [
"Group1",
"Group2"
] | -| `locations` | List[*str*] | :heavy_minus_sign: | UUIDs of the of the Location associated with the company | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `employee_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The employee number | EMP001 | -| `company_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated company | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `first_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The first name of the employee | John | -| `last_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The last name of the employee | Doe | -| `preferred_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The preferred name of the employee | Johnny | -| `display_full_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The full display name of the employee | John Doe | -| `username` | *OptionalNullable[str]* | :heavy_minus_sign: | The username of the employee | johndoe | -| `work_email` | *OptionalNullable[str]* | :heavy_minus_sign: | The work email of the employee | john.doe@company.com | -| `personal_email` | *OptionalNullable[str]* | :heavy_minus_sign: | The personal email of the employee | john.doe@personal.com | -| `mobile_phone_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The mobile phone number of the employee | +1234567890 | -| `employments` | List[*str*] | :heavy_minus_sign: | The employments of the employee | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f",
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `ssn` | *OptionalNullable[str]* | :heavy_minus_sign: | The Social Security Number of the employee | 123-45-6789 | -| `gender` | *OptionalNullable[str]* | :heavy_minus_sign: | The gender of the employee | MALE | -| `ethnicity` | *OptionalNullable[str]* | :heavy_minus_sign: | The ethnicity of the employee | AMERICAN_INDIAN_OR_ALASKA_NATIVE | -| `marital_status` | *OptionalNullable[str]* | :heavy_minus_sign: | The marital status of the employee | Married | -| `date_of_birth` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date of birth of the employee | 1990-01-01 | -| `start_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date of the employee | 2020-01-01 | -| `employment_status` | *OptionalNullable[str]* | :heavy_minus_sign: | The employment status of the employee | ACTIVE | -| `termination_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The termination date of the employee | 2025-01-01 | -| `avatar_url` | *OptionalNullable[str]* | :heavy_minus_sign: | The URL of the employee's avatar | https://example.com/avatar.jpg | -| `manager_id` | *OptionalNullable[str]* | :heavy_minus_sign: | UUID of the manager (employee) of the employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisEmployeeInputFieldMappings]](../models/unifiedhrisemployeeinputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeeinputfieldmappings.md b/docs/models/unifiedhrisemployeeinputfieldmappings.md deleted file mode 100644 index c4e395d..0000000 --- a/docs/models/unifiedhrisemployeeinputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmployeeInputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeeoutput.md b/docs/models/unifiedhrisemployeeoutput.md deleted file mode 100644 index a0bca7a..0000000 --- a/docs/models/unifiedhrisemployeeoutput.md +++ /dev/null @@ -1,38 +0,0 @@ -# UnifiedHrisEmployeeOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `groups` | List[*str*] | :heavy_minus_sign: | The groups the employee belongs to | [
"Group1",
"Group2"
] | -| `locations` | List[*str*] | :heavy_minus_sign: | UUIDs of the of the Location associated with the company | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `employee_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The employee number | EMP001 | -| `company_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated company | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `first_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The first name of the employee | John | -| `last_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The last name of the employee | Doe | -| `preferred_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The preferred name of the employee | Johnny | -| `display_full_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The full display name of the employee | John Doe | -| `username` | *OptionalNullable[str]* | :heavy_minus_sign: | The username of the employee | johndoe | -| `work_email` | *OptionalNullable[str]* | :heavy_minus_sign: | The work email of the employee | john.doe@company.com | -| `personal_email` | *OptionalNullable[str]* | :heavy_minus_sign: | The personal email of the employee | john.doe@personal.com | -| `mobile_phone_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The mobile phone number of the employee | +1234567890 | -| `employments` | List[*str*] | :heavy_minus_sign: | The employments of the employee | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f",
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | -| `ssn` | *OptionalNullable[str]* | :heavy_minus_sign: | The Social Security Number of the employee | 123-45-6789 | -| `gender` | *OptionalNullable[str]* | :heavy_minus_sign: | The gender of the employee | MALE | -| `ethnicity` | *OptionalNullable[str]* | :heavy_minus_sign: | The ethnicity of the employee | AMERICAN_INDIAN_OR_ALASKA_NATIVE | -| `marital_status` | *OptionalNullable[str]* | :heavy_minus_sign: | The marital status of the employee | Married | -| `date_of_birth` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date of birth of the employee | 1990-01-01 | -| `start_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date of the employee | 2020-01-01 | -| `employment_status` | *OptionalNullable[str]* | :heavy_minus_sign: | The employment status of the employee | ACTIVE | -| `termination_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The termination date of the employee | 2025-01-01 | -| `avatar_url` | *OptionalNullable[str]* | :heavy_minus_sign: | The URL of the employee's avatar | https://example.com/avatar.jpg | -| `manager_id` | *OptionalNullable[str]* | :heavy_minus_sign: | UUID of the manager (employee) of the employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisEmployeeOutputFieldMappings]](../models/unifiedhrisemployeeoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the employee record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the employee in the context of the 3rd Party | employee_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisEmployeeOutputRemoteData]](../models/unifiedhrisemployeeoutputremotedata.md) | :heavy_minus_sign: | The remote data of the employee in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the employee was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the employee record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the employee record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the employee was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeeoutputfieldmappings.md b/docs/models/unifiedhrisemployeeoutputfieldmappings.md deleted file mode 100644 index b4fe006..0000000 --- a/docs/models/unifiedhrisemployeeoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmployeeOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeeoutputremotedata.md b/docs/models/unifiedhrisemployeeoutputremotedata.md deleted file mode 100644 index 5422122..0000000 --- a/docs/models/unifiedhrisemployeeoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmployeeOutputRemoteData - -The remote data of the employee in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeepayrollrunoutput.md b/docs/models/unifiedhrisemployeepayrollrunoutput.md deleted file mode 100644 index 565115a..0000000 --- a/docs/models/unifiedhrisemployeepayrollrunoutput.md +++ /dev/null @@ -1,25 +0,0 @@ -# UnifiedHrisEmployeepayrollrunOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `payroll_run_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated payroll run | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `gross_pay` | *OptionalNullable[float]* | :heavy_minus_sign: | The gross pay amount | 5000 | -| `net_pay` | *OptionalNullable[float]* | :heavy_minus_sign: | The net pay amount | 4000 | -| `start_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date of the pay period | 2023-01-01T00:00:00Z | -| `end_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end date of the pay period | 2023-01-15T23:59:59Z | -| `check_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date the check was issued | 2023-01-20T00:00:00Z | -| `deductions` | List[[models.DeductionItem](../models/deductionitem.md)] | :heavy_minus_sign: | The list of deductions for this payroll run | | -| `earnings` | List[[models.EarningItem](../models/earningitem.md)] | :heavy_minus_sign: | The list of earnings for this payroll run | | -| `taxes` | List[[models.TaxItem](../models/taxitem.md)] | :heavy_minus_sign: | The list of taxes for this payroll run | | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisEmployeepayrollrunOutputFieldMappings]](../models/unifiedhrisemployeepayrollrunoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the employee payroll run record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the employee payroll run in the context of the 3rd Party | payroll_run_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisEmployeepayrollrunOutputRemoteData]](../models/unifiedhrisemployeepayrollrunoutputremotedata.md) | :heavy_minus_sign: | The remote data of the employee payroll run in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the employee payroll run was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the employee payroll run record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the employee payroll run record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the employee payroll run was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeepayrollrunoutputfieldmappings.md b/docs/models/unifiedhrisemployeepayrollrunoutputfieldmappings.md deleted file mode 100644 index 526ad8b..0000000 --- a/docs/models/unifiedhrisemployeepayrollrunoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmployeepayrollrunOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployeepayrollrunoutputremotedata.md b/docs/models/unifiedhrisemployeepayrollrunoutputremotedata.md deleted file mode 100644 index ff5782b..0000000 --- a/docs/models/unifiedhrisemployeepayrollrunoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmployeepayrollrunOutputRemoteData - -The remote data of the employee payroll run in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployerbenefitoutput.md b/docs/models/unifiedhrisemployerbenefitoutput.md deleted file mode 100644 index 7af0f0e..0000000 --- a/docs/models/unifiedhrisemployerbenefitoutput.md +++ /dev/null @@ -1,19 +0,0 @@ -# UnifiedHrisEmployerbenefitOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | -| `benefit_plan_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the benefit plan | Health Insurance | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the employer benefit | Company Health Plan | -| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | The description of the employer benefit | Comprehensive health insurance coverage for employees | -| `deduction_code` | *OptionalNullable[str]* | :heavy_minus_sign: | The deduction code for the employer benefit | HEALTH-001 | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisEmployerbenefitOutputFieldMappings]](../models/unifiedhrisemployerbenefitoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the employer benefit record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the employer benefit in the context of the 3rd Party | benefit_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisEmployerbenefitOutputRemoteData]](../models/unifiedhrisemployerbenefitoutputremotedata.md) | :heavy_minus_sign: | The remote data of the employer benefit in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the employer benefit was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the employer benefit record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the employer benefit record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the employer benefit was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployerbenefitoutputfieldmappings.md b/docs/models/unifiedhrisemployerbenefitoutputfieldmappings.md deleted file mode 100644 index f6c5918..0000000 --- a/docs/models/unifiedhrisemployerbenefitoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmployerbenefitOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemployerbenefitoutputremotedata.md b/docs/models/unifiedhrisemployerbenefitoutputremotedata.md deleted file mode 100644 index 3f00e36..0000000 --- a/docs/models/unifiedhrisemployerbenefitoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmployerbenefitOutputRemoteData - -The remote data of the employer benefit in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemploymentoutput.md b/docs/models/unifiedhrisemploymentoutput.md deleted file mode 100644 index c5b345e..0000000 --- a/docs/models/unifiedhrisemploymentoutput.md +++ /dev/null @@ -1,25 +0,0 @@ -# UnifiedHrisEmploymentOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `job_title` | *OptionalNullable[str]* | :heavy_minus_sign: | The job title of the employment | Software Engineer | -| `pay_rate` | *OptionalNullable[float]* | :heavy_minus_sign: | The pay rate of the employment | 100000 | -| `pay_period` | *OptionalNullable[str]* | :heavy_minus_sign: | The pay period of the employment | MONTHLY | -| `pay_frequency` | *OptionalNullable[str]* | :heavy_minus_sign: | The pay frequency of the employment | WEEKLY | -| `pay_currency` | *OptionalNullable[str]* | :heavy_minus_sign: | The currency of the pay | USD | -| `flsa_status` | *OptionalNullable[str]* | :heavy_minus_sign: | The FLSA status of the employment | EXEMPT | -| `effective_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The effective date of the employment | 2023-01-01 | -| `employment_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of employment | FULL_TIME | -| `pay_group_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated pay group | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisEmploymentOutputFieldMappings]](../models/unifiedhrisemploymentoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the employment record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the employment in the context of the 3rd Party | employment_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisEmploymentOutputRemoteData]](../models/unifiedhrisemploymentoutputremotedata.md) | :heavy_minus_sign: | The remote data of the employment in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the employment was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the employment record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the employment record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the employment was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrisemploymentoutputfieldmappings.md b/docs/models/unifiedhrisemploymentoutputfieldmappings.md deleted file mode 100644 index 603772e..0000000 --- a/docs/models/unifiedhrisemploymentoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmploymentOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisemploymentoutputremotedata.md b/docs/models/unifiedhrisemploymentoutputremotedata.md deleted file mode 100644 index 3e7ef1f..0000000 --- a/docs/models/unifiedhrisemploymentoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisEmploymentOutputRemoteData - -The remote data of the employment in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisgroupoutput.md b/docs/models/unifiedhrisgroupoutput.md deleted file mode 100644 index a06c422..0000000 --- a/docs/models/unifiedhrisgroupoutput.md +++ /dev/null @@ -1,18 +0,0 @@ -# UnifiedHrisGroupOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `parent_group` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the parent group | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the group | Engineering Team | -| `type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the group | DEPARTMENT | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisGroupOutputFieldMappings]](../models/unifiedhrisgroupoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the group record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the group in the context of the 3rd Party | group_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisGroupOutputRemoteData]](../models/unifiedhrisgroupoutputremotedata.md) | :heavy_minus_sign: | The remote data of the group in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the group was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the group record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the group record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the group was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrisgroupoutputfieldmappings.md b/docs/models/unifiedhrisgroupoutputfieldmappings.md deleted file mode 100644 index 566f956..0000000 --- a/docs/models/unifiedhrisgroupoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisGroupOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrisgroupoutputremotedata.md b/docs/models/unifiedhrisgroupoutputremotedata.md deleted file mode 100644 index 50db238..0000000 --- a/docs/models/unifiedhrisgroupoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisGroupOutputRemoteData - -The remote data of the group in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrislocationoutput.md b/docs/models/unifiedhrislocationoutput.md deleted file mode 100644 index f1b930f..0000000 --- a/docs/models/unifiedhrislocationoutput.md +++ /dev/null @@ -1,26 +0,0 @@ -# UnifiedHrisLocationOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the location | Headquarters | -| `phone_number` | *OptionalNullable[str]* | :heavy_minus_sign: | The phone number of the location | +1234567890 | -| `street_1` | *OptionalNullable[str]* | :heavy_minus_sign: | The first line of the street address | 123 Main St | -| `street_2` | *OptionalNullable[str]* | :heavy_minus_sign: | The second line of the street address | Suite 456 | -| `city` | *OptionalNullable[str]* | :heavy_minus_sign: | The city of the location | San Francisco | -| `state` | *OptionalNullable[str]* | :heavy_minus_sign: | The state or region of the location | CA | -| `zip_code` | *OptionalNullable[str]* | :heavy_minus_sign: | The zip or postal code of the location | 94105 | -| `country` | *OptionalNullable[str]* | :heavy_minus_sign: | The country of the location | USA | -| `location_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the location | WORK | -| `company_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the company associated with the location | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the employee associated with the location | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisLocationOutputFieldMappings]](../models/unifiedhrislocationoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the location record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the location in the context of the 3rd Party | location_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisLocationOutputRemoteData]](../models/unifiedhrislocationoutputremotedata.md) | :heavy_minus_sign: | The remote data of the location in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the location was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the location record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the location record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the location was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrislocationoutputfieldmappings.md b/docs/models/unifiedhrislocationoutputfieldmappings.md deleted file mode 100644 index bb6939f..0000000 --- a/docs/models/unifiedhrislocationoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisLocationOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrislocationoutputremotedata.md b/docs/models/unifiedhrislocationoutputremotedata.md deleted file mode 100644 index f3164da..0000000 --- a/docs/models/unifiedhrislocationoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisLocationOutputRemoteData - -The remote data of the location in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrispaygroupoutput.md b/docs/models/unifiedhrispaygroupoutput.md deleted file mode 100644 index b071521..0000000 --- a/docs/models/unifiedhrispaygroupoutput.md +++ /dev/null @@ -1,16 +0,0 @@ -# UnifiedHrisPaygroupOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `pay_group_name` | *OptionalNullable[str]* | :heavy_minus_sign: | The name of the pay group | Monthly Salaried | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisPaygroupOutputFieldMappings]](../models/unifiedhrispaygroupoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the pay group record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the pay group in the context of the 3rd Party | paygroup_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisPaygroupOutputRemoteData]](../models/unifiedhrispaygroupoutputremotedata.md) | :heavy_minus_sign: | The remote data of the pay group in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the pay group was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the pay group record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the pay group record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the pay group was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhrispaygroupoutputfieldmappings.md b/docs/models/unifiedhrispaygroupoutputfieldmappings.md deleted file mode 100644 index e4988d2..0000000 --- a/docs/models/unifiedhrispaygroupoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisPaygroupOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrispaygroupoutputremotedata.md b/docs/models/unifiedhrispaygroupoutputremotedata.md deleted file mode 100644 index a1c4f5a..0000000 --- a/docs/models/unifiedhrispaygroupoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisPaygroupOutputRemoteData - -The remote data of the pay group in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrispayrollrunoutput.md b/docs/models/unifiedhrispayrollrunoutput.md deleted file mode 100644 index ede7e7b..0000000 --- a/docs/models/unifiedhrispayrollrunoutput.md +++ /dev/null @@ -1,21 +0,0 @@ -# UnifiedHrisPayrollrunOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `run_state` | *OptionalNullable[str]* | :heavy_minus_sign: | The state of the payroll run | PAID | -| `run_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of the payroll run | REGULAR | -| `start_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start date of the payroll run | 2024-01-01T00:00:00Z | -| `end_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end date of the payroll run | 2024-01-15T23:59:59Z | -| `check_date` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The check date of the payroll run | 2024-01-20T00:00:00Z | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisPayrollrunOutputFieldMappings]](../models/unifiedhrispayrollrunoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the payroll run record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the payroll run in the context of the 3rd Party | payroll_run_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisPayrollrunOutputRemoteData]](../models/unifiedhrispayrollrunoutputremotedata.md) | :heavy_minus_sign: | The remote data of the payroll run in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the payroll run was created in the 3rd party system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the payroll run record | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the payroll run record | 2024-10-01T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the payroll run was deleted in the remote system | false | -| `employee_payroll_runs` | List[*str*] | :heavy_minus_sign: | The UUIDs of the employee payroll runs associated with this payroll run | [
"801f9ede-c698-4e66-a7fc-48d19eebaa4f"
] | \ No newline at end of file diff --git a/docs/models/unifiedhrispayrollrunoutputfieldmappings.md b/docs/models/unifiedhrispayrollrunoutputfieldmappings.md deleted file mode 100644 index 49551f6..0000000 --- a/docs/models/unifiedhrispayrollrunoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisPayrollrunOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhrispayrollrunoutputremotedata.md b/docs/models/unifiedhrispayrollrunoutputremotedata.md deleted file mode 100644 index 6879d89..0000000 --- a/docs/models/unifiedhrispayrollrunoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisPayrollrunOutputRemoteData - -The remote data of the payroll run in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffbalanceoutput.md b/docs/models/unifiedhristimeoffbalanceoutput.md deleted file mode 100644 index 67c970f..0000000 --- a/docs/models/unifiedhristimeoffbalanceoutput.md +++ /dev/null @@ -1,19 +0,0 @@ -# UnifiedHrisTimeoffbalanceOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| `balance` | *OptionalNullable[float]* | :heavy_minus_sign: | The current balance of time off | 80 | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `used` | *OptionalNullable[float]* | :heavy_minus_sign: | The amount of time off used | 40 | -| `policy_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of time off policy | VACATION | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisTimeoffbalanceOutputFieldMappings]](../models/unifiedhristimeoffbalanceoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the time off balance record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the time off balance in the context of the 3rd Party | timeoff_balance_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisTimeoffbalanceOutputRemoteData]](../models/unifiedhristimeoffbalanceoutputremotedata.md) | :heavy_minus_sign: | The remote data of the time off balance in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | *OptionalNullable[str]* | :heavy_minus_sign: | The date when the time off balance was created in the 3rd party system | 2024-06-15T12:00:00Z | -| `created_at` | *OptionalNullable[str]* | :heavy_minus_sign: | The created date of the time off balance record | 2024-06-15T12:00:00Z | -| `modified_at` | *OptionalNullable[str]* | :heavy_minus_sign: | The last modified date of the time off balance record | 2024-06-15T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the time off balance was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffbalanceoutputfieldmappings.md b/docs/models/unifiedhristimeoffbalanceoutputfieldmappings.md deleted file mode 100644 index beb0dbd..0000000 --- a/docs/models/unifiedhristimeoffbalanceoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimeoffbalanceOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffbalanceoutputremotedata.md b/docs/models/unifiedhristimeoffbalanceoutputremotedata.md deleted file mode 100644 index 19d3b14..0000000 --- a/docs/models/unifiedhristimeoffbalanceoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimeoffbalanceOutputRemoteData - -The remote data of the time off balance in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffinput.md b/docs/models/unifiedhristimeoffinput.md deleted file mode 100644 index 8f3b614..0000000 --- a/docs/models/unifiedhristimeoffinput.md +++ /dev/null @@ -1,17 +0,0 @@ -# UnifiedHrisTimeoffInput - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `employee` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the employee taking time off | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `approver` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the approver for the time off request | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the time off request | REQUESTED | -| `employee_note` | *OptionalNullable[str]* | :heavy_minus_sign: | A note from the employee about the time off request | Annual vacation | -| `units` | *OptionalNullable[str]* | :heavy_minus_sign: | The units used for the time off (e.g., Days, Hours) | DAYS | -| `amount` | *OptionalNullable[float]* | :heavy_minus_sign: | The amount of time off requested | 5 | -| `request_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of time off request | VACATION | -| `start_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start time of the time off | 2024-07-01T09:00:00Z | -| `end_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end time of the time off | 2024-07-05T17:00:00Z | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisTimeoffInputFieldMappings]](../models/unifiedhristimeoffinputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffinputfieldmappings.md b/docs/models/unifiedhristimeoffinputfieldmappings.md deleted file mode 100644 index 05eb497..0000000 --- a/docs/models/unifiedhristimeoffinputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimeoffInputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffoutput.md b/docs/models/unifiedhristimeoffoutput.md deleted file mode 100644 index 62cb6c7..0000000 --- a/docs/models/unifiedhristimeoffoutput.md +++ /dev/null @@ -1,24 +0,0 @@ -# UnifiedHrisTimeoffOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `employee` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the employee taking time off | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `approver` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the approver for the time off request | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `status` | *OptionalNullable[str]* | :heavy_minus_sign: | The status of the time off request | REQUESTED | -| `employee_note` | *OptionalNullable[str]* | :heavy_minus_sign: | A note from the employee about the time off request | Annual vacation | -| `units` | *OptionalNullable[str]* | :heavy_minus_sign: | The units used for the time off (e.g., Days, Hours) | DAYS | -| `amount` | *OptionalNullable[float]* | :heavy_minus_sign: | The amount of time off requested | 5 | -| `request_type` | *OptionalNullable[str]* | :heavy_minus_sign: | The type of time off request | VACATION | -| `start_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start time of the time off | 2024-07-01T09:00:00Z | -| `end_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end time of the time off | 2024-07-05T17:00:00Z | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisTimeoffOutputFieldMappings]](../models/unifiedhristimeoffoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the time off record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the time off in the context of the 3rd Party | timeoff_1234 | -| `remote_data` | [OptionalNullable[models.UnifiedHrisTimeoffOutputRemoteData]](../models/unifiedhristimeoffoutputremotedata.md) | :heavy_minus_sign: | The remote data of the time off in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the time off was created in the 3rd party system | 2024-06-15T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the time off record | 2024-06-15T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the time off record | 2024-06-15T12:00:00Z | -| `remote_was_deleted` | *OptionalNullable[bool]* | :heavy_minus_sign: | Indicates if the time off was deleted in the remote system | false | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffoutputfieldmappings.md b/docs/models/unifiedhristimeoffoutputfieldmappings.md deleted file mode 100644 index bfb804b..0000000 --- a/docs/models/unifiedhristimeoffoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimeoffOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimeoffoutputremotedata.md b/docs/models/unifiedhristimeoffoutputremotedata.md deleted file mode 100644 index da0221e..0000000 --- a/docs/models/unifiedhristimeoffoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimeoffOutputRemoteData - -The remote data of the time off in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimesheetentryinput.md b/docs/models/unifiedhristimesheetentryinput.md deleted file mode 100644 index 4a32f86..0000000 --- a/docs/models/unifiedhristimesheetentryinput.md +++ /dev/null @@ -1,13 +0,0 @@ -# UnifiedHrisTimesheetEntryInput - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `hours_worked` | *OptionalNullable[float]* | :heavy_minus_sign: | The number of hours worked | 40 | -| `start_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start time of the timesheet entry | 2024-10-01T08:00:00Z | -| `end_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end time of the timesheet entry | 2024-10-01T16:00:00Z | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_was_deleted` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the timesheet entry was deleted in the remote system | false | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisTimesheetEntryInputFieldMappings]](../models/unifiedhristimesheetentryinputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | \ No newline at end of file diff --git a/docs/models/unifiedhristimesheetentryinputfieldmappings.md b/docs/models/unifiedhristimesheetentryinputfieldmappings.md deleted file mode 100644 index ed122ca..0000000 --- a/docs/models/unifiedhristimesheetentryinputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimesheetEntryInputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimesheetentryoutput.md b/docs/models/unifiedhristimesheetentryoutput.md deleted file mode 100644 index 864c916..0000000 --- a/docs/models/unifiedhristimesheetentryoutput.md +++ /dev/null @@ -1,19 +0,0 @@ -# UnifiedHrisTimesheetEntryOutput - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| `hours_worked` | *OptionalNullable[float]* | :heavy_minus_sign: | The number of hours worked | 40 | -| `start_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The start time of the timesheet entry | 2024-10-01T08:00:00Z | -| `end_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The end time of the timesheet entry | 2024-10-01T16:00:00Z | -| `employee_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the associated employee | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_was_deleted` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the timesheet entry was deleted in the remote system | false | -| `field_mappings` | [OptionalNullable[models.UnifiedHrisTimesheetEntryOutputFieldMappings]](../models/unifiedhristimesheetentryoutputfieldmappings.md) | :heavy_minus_sign: | The custom field mappings of the object between the remote 3rd party & Panora | {
"custom_field_1": "value1",
"custom_field_2": "value2"
} | -| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | The UUID of the timesheet entry record | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_id` | *OptionalNullable[str]* | :heavy_minus_sign: | The remote ID of the timesheet entry | id_1 | -| `remote_created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The date when the timesheet entry was created in the remote system | 2024-10-01T12:00:00Z | -| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The created date of the timesheet entry | 2024-10-01T12:00:00Z | -| `modified_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | The last modified date of the timesheet entry | 2024-10-01T12:00:00Z | -| `remote_data` | [OptionalNullable[models.UnifiedHrisTimesheetEntryOutputRemoteData]](../models/unifiedhristimesheetentryoutputremotedata.md) | :heavy_minus_sign: | The remote data of the timesheet entry in the context of the 3rd Party | {
"raw_data": {
"additional_field": "some value"
}
} | \ No newline at end of file diff --git a/docs/models/unifiedhristimesheetentryoutputfieldmappings.md b/docs/models/unifiedhristimesheetentryoutputfieldmappings.md deleted file mode 100644 index f712178..0000000 --- a/docs/models/unifiedhristimesheetentryoutputfieldmappings.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimesheetEntryOutputFieldMappings - -The custom field mappings of the object between the remote 3rd party & Panora - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/unifiedhristimesheetentryoutputremotedata.md b/docs/models/unifiedhristimesheetentryoutputremotedata.md deleted file mode 100644 index 99e8455..0000000 --- a/docs/models/unifiedhristimesheetentryoutputremotedata.md +++ /dev/null @@ -1,9 +0,0 @@ -# UnifiedHrisTimesheetEntryOutputRemoteData - -The remote data of the timesheet entry in the context of the 3rd Party - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/updatepullfrequencydto.md b/docs/models/updatepullfrequencydto.md index 270c38e..bfc957e 100644 --- a/docs/models/updatepullfrequencydto.md +++ b/docs/models/updatepullfrequencydto.md @@ -6,8 +6,6 @@ | Field | Type | Required | Description | Example | | -------------------- | -------------------- | -------------------- | -------------------- | -------------------- | | `crm` | *float* | :heavy_check_mark: | Frequency in seconds | 1800 | -| `ats` | *float* | :heavy_check_mark: | Frequency in seconds | 3600 | -| `hris` | *float* | :heavy_check_mark: | Frequency in seconds | 7200 | | `accounting` | *float* | :heavy_check_mark: | Frequency in seconds | 14400 | | `filestorage` | *float* | :heavy_check_mark: | Frequency in seconds | 28800 | | `ecommerce` | *float* | :heavy_check_mark: | Frequency in seconds | 43200 | diff --git a/docs/models/updatepullfrequencyresponsebody.md b/docs/models/updatepullfrequencyresponsebody.md deleted file mode 100644 index 7fd87ca..0000000 --- a/docs/models/updatepullfrequencyresponsebody.md +++ /dev/null @@ -1,7 +0,0 @@ -# UpdatePullFrequencyResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ----------- | ----------- | ----------- | ----------- | \ No newline at end of file diff --git a/docs/models/url.md b/docs/models/url.md deleted file mode 100644 index f9be1ba..0000000 --- a/docs/models/url.md +++ /dev/null @@ -1,9 +0,0 @@ -# URL - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `url` | *Nullable[str]* | :heavy_check_mark: | The url. | -| `url_type` | *Nullable[str]* | :heavy_check_mark: | The url type. It takes [WEBSITE \| BLOG \| LINKEDIN \| GITHUB \| OTHER] | \ No newline at end of file diff --git a/docs/models/vertical.md b/docs/models/vertical.md index fadad41..5046d98 100644 --- a/docs/models/vertical.md +++ b/docs/models/vertical.md @@ -6,9 +6,7 @@ | Name | Value | | --------------------- | --------------------- | | `TICKETING` | ticketing | -| `ATS` | ats | | `ACCOUNTING` | accounting | -| `HRIS` | hris | | `CRM` | crm | | `FILESTORAGE` | filestorage | | `ECOMMERCE` | ecommerce | diff --git a/docs/models/webhookdto.md b/docs/models/webhookdto.md index 6c04df7..7923bf7 100644 --- a/docs/models/webhookdto.md +++ b/docs/models/webhookdto.md @@ -6,5 +6,5 @@ | Field | Type | Required | Description | Example | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | | `url` | *Nullable[str]* | :heavy_check_mark: | The endpoint url of the webhook. | https://acme.com/webhook_receiver | -| `scope` | List[*str*] | :heavy_check_mark: | The events that the webhook listen to. | [
"connection.created"
] | -| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | The description of the webhook. | Webhook to receive connection events | \ No newline at end of file +| `description` | *Nullable[str]* | :heavy_check_mark: | The description of the webhook. | Webhook to receive connection events | +| `scope` | List[*str*] | :heavy_check_mark: | The events that the webhook listen to. | [
"connection.created"
] | \ No newline at end of file diff --git a/docs/sdks/accounting/README.md b/docs/sdks/accounting/README.md index 9eca3e1..f2803c2 100644 --- a/docs/sdks/accounting/README.md +++ b/docs/sdks/accounting/README.md @@ -1,5 +1,2 @@ # Accounting -(*accounting*) - -### Available Operations - +(*accounting*) \ No newline at end of file diff --git a/docs/sdks/accounts/README.md b/docs/sdks/accounts/README.md index 5e258da..c92e25f 100644 --- a/docs/sdks/accounts/README.md +++ b/docs/sdks/accounts/README.md @@ -1,6 +1,8 @@ # Accounts (*ticketing.accounts*) +## Overview + ### Available Operations * [list](#list) - List Accounts @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ticketing.accounts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingAccountResponse](../../models/listticketingaccountresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,8 +66,7 @@ s = Panora( api_key="", ) - -res = s.ticketing.accounts.retrieve(x_connection_token="", id="") +res = s.ticketing.accounts.retrieve(x_connection_token="", id="") if res is not None: # handle response @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedTicketingAccountOutput](../../models/unifiedticketingaccountoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/actions/README.md b/docs/sdks/actions/README.md index 2a5a908..e3c11a1 100644 --- a/docs/sdks/actions/README.md +++ b/docs/sdks/actions/README.md @@ -1,6 +1,8 @@ # Actions (*marketingautomation.actions*) +## Overview + ### Available Operations * [list](#list) - List Actions @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.actions.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingautomationActionResponse](../../models/listmarketingautomationactionresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.actions.create(x_connection_token="", unified_marketingautomation_action_input={}, remote_data=False) if res is not None: @@ -85,15 +84,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationActionOutput](../../models/unifiedmarketingautomationactionoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -108,7 +107,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.actions.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -126,12 +124,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationActionOutput](../../models/unifiedmarketingautomationactionoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/activities/README.md b/docs/sdks/activities/README.md deleted file mode 100644 index 91bc8d7..0000000 --- a/docs/sdks/activities/README.md +++ /dev/null @@ -1,149 +0,0 @@ -# Activities -(*ats.activities*) - -### Available Operations - -* [list](#list) - List Activities -* [create](#create) - Create Activities -* [retrieve](#retrieve) - Retrieve Activities - -## list - -List Activities - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.activities.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsActivityResponse](../../models/listatsactivityresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Activities in any supported Ats software - -### Example Usage - -```python -import dateutil.parser -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.activities.create(x_connection_token="", unified_ats_activity_input={ - "activity_type": "NOTE", - "subject": "Email subject", - "body": "Dear Diana, I love you", - "visibility": "PUBLIC", - "candidate_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, -}, remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_activity_input` | [models.UnifiedAtsActivityInput](../../models/unifiedatsactivityinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsActivityOutput](../../models/unifiedatsactivityoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Activities from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.activities.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the activity you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsActivityOutput](../../models/unifiedatsactivityoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/addresses/README.md b/docs/sdks/addresses/README.md index 2389968..694f6f0 100644 --- a/docs/sdks/addresses/README.md +++ b/docs/sdks/addresses/README.md @@ -1,6 +1,8 @@ # Addresses (*accounting.addresses*) +## Overview + ### Available Operations * [list](#list) - List Addresss @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.addresses.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingAddressResponse](../../models/listaccountingaddressresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.addresses.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingAddressOutput](../../models/unifiedaccountingaddressoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/applications/README.md b/docs/sdks/applications/README.md deleted file mode 100644 index db755e9..0000000 --- a/docs/sdks/applications/README.md +++ /dev/null @@ -1,155 +0,0 @@ -# Applications -(*ats.applications*) - -### Available Operations - -* [list](#list) - List Applications -* [create](#create) - Create Applications -* [retrieve](#retrieve) - Retrieve Applications - -## list - -List Applications - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.applications.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsApplicationResponse](../../models/listatsapplicationresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Applications in any supported Ats software - -### Example Usage - -```python -import dateutil.parser -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.applications.create(x_connection_token="", unified_ats_application_input={ - "applied_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "rejected_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "offers": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "12345678-1234-1234-1234-123456789012", - ], - "source": "Source Name", - "credited_to": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "current_stage": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "reject_reason": "Candidate not experienced enough", - "candidate_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "job_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, -}, remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_application_input` | [models.UnifiedAtsApplicationInput](../../models/unifiedatsapplicationinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsApplicationOutput](../../models/unifiedatsapplicationoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Applications from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.applications.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the application you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsApplicationOutput](../../models/unifiedatsapplicationoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/ats/README.md b/docs/sdks/ats/README.md deleted file mode 100644 index 9a7b5bd..0000000 --- a/docs/sdks/ats/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Ats -(*ats*) - -### Available Operations - diff --git a/docs/sdks/attachments/README.md b/docs/sdks/attachments/README.md index 5ca4e70..f8748a1 100644 --- a/docs/sdks/attachments/README.md +++ b/docs/sdks/attachments/README.md @@ -1,5 +1,7 @@ # Attachments -(*ats.attachments*) +(*accounting.attachments*) + +## Overview ### Available Operations @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - -res = s.ats.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") +res = s.accounting.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,42 +44,34 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response -**[models.ListAtsAttachmentResponse](../../models/listatsattachmentresponse.md)** +**[models.ListAccountingAttachmentsResponse](../../models/listaccountingattachmentsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create -Create Attachments in any supported ATS software +Create attachments in any supported Accounting software ### Example Usage ```python -import dateutil.parser from panora_sdk import Panora s = Panora( api_key="", ) - -res = s.ats.attachments.create(x_connection_token="", unified_ats_attachment_input={ - "file_url": "https://example.com/file.pdf", - "file_name": "file.pdf", - "attachment_type": "RESUME", - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_modified_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "candidate_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, +res = s.accounting.attachments.create(x_connection_token="", unified_accounting_attachment_input={ + "file_name": "invoice.pdf", + "file_url": "https://example.com/files/invoice.pdf", + "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": {}, }, remote_data=False) if res is not None: @@ -90,26 +82,26 @@ if res is not None: ### Parameters -| Parameter | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_attachment_input` | [models.UnifiedAtsAttachmentInput](../../models/unifiedatsattachmentinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | +| `unified_accounting_attachment_input` | [models.UnifiedAccountingAttachmentInput](../../models/unifiedaccountingattachmentinput.md) | :heavy_check_mark: | N/A | | +| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | ### Response -**[models.UnifiedAtsAttachmentOutput](../../models/unifiedatsattachmentoutput.md)** +**[models.UnifiedAccountingAttachmentOutput](../../models/unifiedaccountingattachmentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve -Retrieve Attachments from any connected Ats software +Retrieve attachments from any connected Accounting software ### Example Usage @@ -120,8 +112,7 @@ s = Panora( api_key="", ) - -res = s.ats.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) +res = s.accounting.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response @@ -135,15 +126,15 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | | `id` | *str* | :heavy_check_mark: | id of the attachment you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | +| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response -**[models.UnifiedAtsAttachmentOutput](../../models/unifiedatsattachmentoutput.md)** +**[models.UnifiedAccountingAttachmentOutput](../../models/unifiedaccountingattachmentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/auth/README.md b/docs/sdks/auth/README.md index 890e03b..cbf19bf 100644 --- a/docs/sdks/auth/README.md +++ b/docs/sdks/auth/README.md @@ -1,5 +1,2 @@ # Auth -(*auth*) - -### Available Operations - +(*auth*) \ No newline at end of file diff --git a/docs/sdks/automations/README.md b/docs/sdks/automations/README.md index f12e7b4..7347720 100644 --- a/docs/sdks/automations/README.md +++ b/docs/sdks/automations/README.md @@ -1,6 +1,8 @@ # Automations (*marketingautomation.automations*) +## Overview + ### Available Operations * [list](#list) - List Automations @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.automations.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingautomationAutomationsResponse](../../models/listmarketingautomationautomationsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.automations.create(x_connection_token="", unified_marketingautomation_automation_input={}, remote_data=False) if res is not None: @@ -85,15 +84,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationAutomationOutput](../../models/unifiedmarketingautomationautomationoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -108,7 +107,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.automations.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -126,12 +124,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationAutomationOutput](../../models/unifiedmarketingautomationautomationoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/balancesheets/README.md b/docs/sdks/balancesheets/README.md index 2e51451..97ae1d5 100644 --- a/docs/sdks/balancesheets/README.md +++ b/docs/sdks/balancesheets/README.md @@ -1,6 +1,8 @@ # Balancesheets (*accounting.balancesheets*) +## Overview + ### Available Operations * [list](#list) - List BalanceSheets @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.balancesheets.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingBalanceSheetsResponse](../../models/listaccountingbalancesheetsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.balancesheets.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingBalancesheetOutput](../../models/unifiedaccountingbalancesheetoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/bankinfos/README.md b/docs/sdks/bankinfos/README.md deleted file mode 100644 index 1e023ff..0000000 --- a/docs/sdks/bankinfos/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Bankinfos -(*hris.bankinfos*) - -### Available Operations - -* [list](#list) - List Bank Info -* [retrieve](#retrieve) - Retrieve Bank Info - -## list - -List Bank Info - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.bankinfos.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisBankInfoResponse](../../models/listhrisbankinforesponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Bank Info from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.bankinfos.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the bank info you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisBankinfoOutput](../../models/unifiedhrisbankinfooutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/benefits/README.md b/docs/sdks/benefits/README.md deleted file mode 100644 index 514cb9a..0000000 --- a/docs/sdks/benefits/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Benefits -(*hris.benefits*) - -### Available Operations - -* [list](#list) - List Benefits -* [retrieve](#retrieve) - Retrieve Benefit - -## list - -List Benefits - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.benefits.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisBenefitsResponse](../../models/listhrisbenefitsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a Benefit from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.benefits.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the benefit you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisBenefitOutput](../../models/unifiedhrisbenefitoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/campaigns/README.md b/docs/sdks/campaigns/README.md index a92041f..b648e61 100644 --- a/docs/sdks/campaigns/README.md +++ b/docs/sdks/campaigns/README.md @@ -1,6 +1,8 @@ # Campaigns (*marketingautomation.campaigns*) +## Overview + ### Available Operations * [list](#list) - List Campaigns @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.campaigns.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingautomationCampaignsResponse](../../models/listmarketingautomationcampaignsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.campaigns.create(x_connection_token="", unified_marketingautomation_campaign_input={}, remote_data=False) if res is not None: @@ -85,15 +84,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationCampaignOutput](../../models/unifiedmarketingautomationcampaignoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -108,7 +107,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.campaigns.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -126,12 +124,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationCampaignOutput](../../models/unifiedmarketingautomationcampaignoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/candidates/README.md b/docs/sdks/candidates/README.md deleted file mode 100644 index 28a95ef..0000000 --- a/docs/sdks/candidates/README.md +++ /dev/null @@ -1,181 +0,0 @@ -# Candidates -(*ats.candidates*) - -### Available Operations - -* [list](#list) - List Candidates -* [create](#create) - Create Candidates -* [retrieve](#retrieve) - Retrieve Candidates - -## list - -List Candidates - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.candidates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsCandidateResponse](../../models/listatscandidateresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Candidates in any supported Ats software - -### Example Usage - -```python -import dateutil.parser -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.candidates.create(x_connection_token="", unified_ats_candidate_input={ - "first_name": "Joe", - "last_name": "Doe", - "company": "Acme", - "title": "Analyst", - "locations": "New York", - "is_private": False, - "email_reachable": True, - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_modified_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "last_interaction_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "attachments": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "applications": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "tags": [ - "tag_1", - "tag_2", - ], - "urls": [ - { - "url": "mywebsite.com", - "url_type": "WEBSITE", - }, - ], - "phone_numbers": [ - { - "phone_number": "+33660688899", - "phone_type": "WORK", - }, - ], - "email_addresses": [ - { - "email_address": "joedoe@gmail.com", - "email_address_type": "WORK", - }, - ], - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, -}, remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_candidate_input` | [models.UnifiedAtsCandidateInput](../../models/unifiedatscandidateinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsCandidateOutput](../../models/unifiedatscandidateoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Candidates from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.candidates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the candidate you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsCandidateOutput](../../models/unifiedatscandidateoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/cashflowstatements/README.md b/docs/sdks/cashflowstatements/README.md index e832168..67bb748 100644 --- a/docs/sdks/cashflowstatements/README.md +++ b/docs/sdks/cashflowstatements/README.md @@ -1,6 +1,8 @@ # Cashflowstatements (*accounting.cashflowstatements*) +## Overview + ### Available Operations * [list](#list) - List CashflowStatements @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.cashflowstatements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingCashflowStatementResponse](../../models/listaccountingcashflowstatementresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.cashflowstatements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingCashflowstatementOutput](../../models/unifiedaccountingcashflowstatementoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/collections/README.md b/docs/sdks/collections/README.md index ad0498f..09c5d00 100644 --- a/docs/sdks/collections/README.md +++ b/docs/sdks/collections/README.md @@ -1,6 +1,8 @@ # Collections (*ticketing.collections*) +## Overview + ### Available Operations * [list](#list) - List Collections @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ticketing.collections.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingCollectionsResponse](../../models/listticketingcollectionsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.ticketing.collections.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedTicketingCollectionOutput](../../models/unifiedticketingcollectionoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/comments/README.md b/docs/sdks/comments/README.md index 9104787..a07a985 100644 --- a/docs/sdks/comments/README.md +++ b/docs/sdks/comments/README.md @@ -1,6 +1,8 @@ # Comments (*ticketing.comments*) +## Overview + ### Available Operations * [list](#list) - List Comments @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.ticketing.comments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingCommentsResponse](../../models/listticketingcommentsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.ticketing.comments.create(x_connection_token="", unified_ticketing_comment_input={ "body": "Assigned to Eric !", "html_body": "

Assigned to Eric !

", @@ -96,15 +95,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedTicketingCommentOutput](../../models/unifiedticketingcommentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -119,8 +118,7 @@ s = Panora( api_key="", ) - -res = s.ticketing.comments.retrieve(x_connection_token="", id="") +res = s.ticketing.comments.retrieve(x_connection_token="", id="") if res is not None: # handle response @@ -137,12 +135,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.RetrieveTicketingCommentResponseBody](../../models/retrieveticketingcommentresponsebody.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/companies/README.md b/docs/sdks/companies/README.md index aa32d2c..a9f4cc5 100644 --- a/docs/sdks/companies/README.md +++ b/docs/sdks/companies/README.md @@ -1,6 +1,8 @@ # Companies (*crm.companies*) +## Overview + ### Available Operations * [list](#list) - List Companies @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.crm.companies.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmCompanyResponse](../../models/listcrmcompanyresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.crm.companies.create(x_connection_token="", unified_crm_company_input={ "name": "Acme", "industry": "ACCOUNTING", @@ -98,8 +97,8 @@ res = s.crm.companies.create(x_connection_token="", unified_crm_company_i }, ], "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }, remote_data=False) @@ -118,15 +117,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original CRM software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmCompanyOutput](../../models/unifiedcrmcompanyoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -141,7 +140,6 @@ s = Panora( api_key="", ) - res = s.crm.companies.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -159,12 +157,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmCompanyOutput](../../models/unifiedcrmcompanyoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/companyinfos/README.md b/docs/sdks/companyinfos/README.md index 2194a58..9fcf5be 100644 --- a/docs/sdks/companyinfos/README.md +++ b/docs/sdks/companyinfos/README.md @@ -1,6 +1,8 @@ # Companyinfos (*accounting.companyinfos*) +## Overview + ### Available Operations * [list](#list) - List CompanyInfos @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.companyinfos.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingCompanyInfosResponse](../../models/listaccountingcompanyinfosresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.companyinfos.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingCompanyinfoOutput](../../models/unifiedaccountingcompanyinfooutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/connections/README.md b/docs/sdks/connections/README.md index d99406b..172ddfd 100644 --- a/docs/sdks/connections/README.md +++ b/docs/sdks/connections/README.md @@ -1,6 +1,8 @@ # Connections (*connections*) +## Overview + ### Available Operations * [list](#list) - List Connections @@ -18,7 +20,6 @@ s = Panora( api_key="", ) - res = s.connections.list() if res is not None: @@ -33,12 +34,12 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[List[models.Connection]](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/contacts/README.md b/docs/sdks/contacts/README.md index 1bfa717..ab3bb9d 100644 --- a/docs/sdks/contacts/README.md +++ b/docs/sdks/contacts/README.md @@ -1,6 +1,8 @@ # Contacts (*ticketing.contacts*) +## Overview + ### Available Operations * [list](#list) - List Contacts @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ticketing.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingContactsResponse](../../models/listticketingcontactsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,8 +66,7 @@ s = Panora( api_key="", ) - -res = s.ticketing.contacts.retrieve(x_connection_token="", id="") +res = s.ticketing.contacts.retrieve(x_connection_token="", id="") if res is not None: # handle response @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.RetrieveTicketingContactResponseBody](../../models/retrieveticketingcontactresponsebody.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/creditnotes/README.md b/docs/sdks/creditnotes/README.md index 0e8b76a..a3c9337 100644 --- a/docs/sdks/creditnotes/README.md +++ b/docs/sdks/creditnotes/README.md @@ -1,6 +1,8 @@ # Creditnotes (*accounting.creditnotes*) +## Overview + ### Available Operations * [list](#list) - List CreditNotes @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.creditnotes.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingCreditNoteResponse](../../models/listaccountingcreditnoteresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.creditnotes.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingCreditnoteOutput](../../models/unifiedaccountingcreditnoteoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/crm/README.md b/docs/sdks/crm/README.md index ca731a0..7b629fc 100644 --- a/docs/sdks/crm/README.md +++ b/docs/sdks/crm/README.md @@ -1,5 +1,2 @@ # Crm -(*crm*) - -### Available Operations - +(*crm*) \ No newline at end of file diff --git a/docs/sdks/customers/README.md b/docs/sdks/customers/README.md index 8108cf1..fe3bfa8 100644 --- a/docs/sdks/customers/README.md +++ b/docs/sdks/customers/README.md @@ -1,6 +1,8 @@ # Customers (*ecommerce.customers*) +## Overview + ### Available Operations * [list](#list) - List Customers @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ecommerce.customers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListEcommerceCustomersResponse](../../models/listecommercecustomersresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,8 +66,7 @@ s = Panora( api_key="", ) - -res = s.ecommerce.customers.retrieve(x_connection_token="", id="") +res = s.ecommerce.customers.retrieve(x_connection_token="", id="") if res is not None: # handle response @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedEcommerceCustomerOutput](../../models/unifiedecommercecustomeroutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/deals/README.md b/docs/sdks/deals/README.md index 1922d86..d71cbfd 100644 --- a/docs/sdks/deals/README.md +++ b/docs/sdks/deals/README.md @@ -1,6 +1,8 @@ # Deals (*crm.deals*) +## Overview + ### Available Operations * [list](#list) - List Deals @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.crm.deals.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmDealsResponse](../../models/listcrmdealsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.crm.deals.create(x_connection_token="", unified_crm_deal_input={ "name": "Huge Contract with Acme", "description": "Contract with Sales Operations Team", @@ -76,8 +75,8 @@ res = s.crm.deals.create(x_connection_token="", unified_crm_deal_input={ "stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }) @@ -96,15 +95,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedCrmDealOutput](../../models/unifiedcrmdealoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -119,7 +118,6 @@ s = Panora( api_key="", ) - res = s.crm.deals.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -137,12 +135,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmDealOutput](../../models/unifiedcrmdealoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/departments/README.md b/docs/sdks/departments/README.md deleted file mode 100644 index a103797..0000000 --- a/docs/sdks/departments/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Departments -(*ats.departments*) - -### Available Operations - -* [list](#list) - List Departments -* [retrieve](#retrieve) - Retrieve Departments - -## list - -List Departments - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.departments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsDepartmentsResponse](../../models/listatsdepartmentsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Departments from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.departments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the department you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsDepartmentOutput](../../models/unifiedatsdepartmentoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/dependents/README.md b/docs/sdks/dependents/README.md deleted file mode 100644 index 52e2891..0000000 --- a/docs/sdks/dependents/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Dependents -(*hris.dependents*) - -### Available Operations - -* [list](#list) - List Dependents -* [retrieve](#retrieve) - Retrieve Dependent - -## list - -List Dependents - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.dependents.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisDependentsResponse](../../models/listhrisdependentsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a Dependent from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.dependents.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the dependent you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisDependentOutput](../../models/unifiedhrisdependentoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/ecommerce/README.md b/docs/sdks/ecommerce/README.md index 37e84ba..61f539b 100644 --- a/docs/sdks/ecommerce/README.md +++ b/docs/sdks/ecommerce/README.md @@ -1,5 +1,2 @@ # Ecommerce -(*ecommerce*) - -### Available Operations - +(*ecommerce*) \ No newline at end of file diff --git a/docs/sdks/eeocs/README.md b/docs/sdks/eeocs/README.md deleted file mode 100644 index ad079f7..0000000 --- a/docs/sdks/eeocs/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Eeocs -(*ats.eeocs*) - -### Available Operations - -* [list](#list) - List Eeocss -* [retrieve](#retrieve) - Retrieve Eeocs - -## list - -List Eeocss - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.eeocs.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsEeocsResponse](../../models/listatseeocsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a eeocs from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.eeocs.retrieve(x_connection_token="", id="") - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `id` | *str* | :heavy_check_mark: | id of the eeocs you want to retrieve. | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - - -### Response - -**[models.UnifiedAtsEeocsOutput](../../models/unifiedatseeocsoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/emails/README.md b/docs/sdks/emails/README.md index d66af6f..c59b32b 100644 --- a/docs/sdks/emails/README.md +++ b/docs/sdks/emails/README.md @@ -1,6 +1,8 @@ # Emails (*marketingautomation.emails*) +## Overview + ### Available Operations * [list](#list) - List Emails @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.emails.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingautomationEmailsResponse](../../models/listmarketingautomationemailsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.emails.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationEmailOutput](../../models/unifiedmarketingautomationemailoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/employeepayrollruns/README.md b/docs/sdks/employeepayrollruns/README.md deleted file mode 100644 index 4ebeac5..0000000 --- a/docs/sdks/employeepayrollruns/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Employeepayrollruns -(*hris.employeepayrollruns*) - -### Available Operations - -* [list](#list) - List Employee Payroll Runs -* [retrieve](#retrieve) - Retrieve Employee Payroll Run - -## list - -List Employee Payroll Runs - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employeepayrollruns.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisEmployeePayrollRunResponse](../../models/listhrisemployeepayrollrunresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Employee Payroll Run from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employeepayrollruns.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employeepayrollrun you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisEmployeepayrollrunOutput](../../models/unifiedhrisemployeepayrollrunoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/employees/README.md b/docs/sdks/employees/README.md deleted file mode 100644 index ac2583e..0000000 --- a/docs/sdks/employees/README.md +++ /dev/null @@ -1,171 +0,0 @@ -# Employees -(*hris.employees*) - -### Available Operations - -* [list](#list) - List Employees -* [create](#create) - Create Employees -* [retrieve](#retrieve) - Retrieve Employee - -## list - -List Employees - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employees.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisEmployeesResponse](../../models/listhrisemployeesresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Employees in any supported Hris software - -### Example Usage - -```python -import dateutil.parser -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employees.create(x_connection_token="", unified_hris_employee_input={ - "groups": [ - "Group1", - "Group2", - ], - "locations": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "employee_number": "EMP001", - "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "first_name": "John", - "last_name": "Doe", - "preferred_name": "Johnny", - "display_full_name": "John Doe", - "username": "johndoe", - "work_email": "john.doe@company.com", - "personal_email": "john.doe@personal.com", - "mobile_phone_number": "+1234567890", - "employments": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "ssn": "123-45-6789", - "gender": "MALE", - "ethnicity": "AMERICAN_INDIAN_OR_ALASKA_NATIVE", - "marital_status": "Married", - "date_of_birth": dateutil.parser.isoparse("1990-01-01"), - "start_date": dateutil.parser.isoparse("2020-01-01"), - "employment_status": "ACTIVE", - "termination_date": dateutil.parser.isoparse("2025-01-01"), - "avatar_url": "https://example.com/avatar.jpg", - "manager_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": {}, -}) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `unified_hris_employee_input` | [models.UnifiedHrisEmployeeInput](../../models/unifiedhrisemployeeinput.md) | :heavy_check_mark: | N/A | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - - -### Response - -**[models.UnifiedHrisEmployeeOutput](../../models/unifiedhrisemployeeoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve an Employee from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employees.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employee you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisEmployeeOutput](../../models/unifiedhrisemployeeoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/employerbenefits/README.md b/docs/sdks/employerbenefits/README.md deleted file mode 100644 index aab21a6..0000000 --- a/docs/sdks/employerbenefits/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Employerbenefits -(*hris.employerbenefits*) - -### Available Operations - -* [list](#list) - List Employer Benefits -* [retrieve](#retrieve) - Retrieve Employer Benefit - -## list - -List Employer Benefits - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employerbenefits.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisEmployerBenefitsResponse](../../models/listhrisemployerbenefitsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve an Employer Benefit from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employerbenefits.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employer benefit you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisEmployerbenefitOutput](../../models/unifiedhrisemployerbenefitoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/employments/README.md b/docs/sdks/employments/README.md deleted file mode 100644 index 397f50b..0000000 --- a/docs/sdks/employments/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Employments -(*hris.employments*) - -### Available Operations - -* [list](#list) - List Employments -* [retrieve](#retrieve) - Retrieve Employment - -## list - -List Employments - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisEmploymentsResponse](../../models/listhrisemploymentsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve an Employment from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.employments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the employment you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisEmploymentOutput](../../models/unifiedhrisemploymentoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/engagements/README.md b/docs/sdks/engagements/README.md index 57e15aa..692c82c 100644 --- a/docs/sdks/engagements/README.md +++ b/docs/sdks/engagements/README.md @@ -1,6 +1,8 @@ # Engagements (*crm.engagements*) +## Overview + ### Available Operations * [list](#list) - List Engagements @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.crm.engagements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmEngagementsResponse](../../models/listcrmengagementsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.crm.engagements.create(x_connection_token="", unified_crm_engagement_input={ "type": "MEETING", "content": "Meeting call with CTO", @@ -82,8 +81,8 @@ res = s.crm.engagements.create(x_connection_token="", unified_crm_engagem "801f9ede-c698-4e66-a7fc-48d19eebaa4f", ], "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }, remote_data=False) @@ -102,15 +101,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmEngagementOutput](../../models/unifiedcrmengagementoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -125,7 +124,6 @@ s = Panora( api_key="", ) - res = s.crm.engagements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -143,12 +141,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmEngagementOutput](../../models/unifiedcrmengagementoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/events/README.md b/docs/sdks/events/README.md index 73c44f8..99f8feb 100644 --- a/docs/sdks/events/README.md +++ b/docs/sdks/events/README.md @@ -1,6 +1,8 @@ # Events (*events*) +## Overview + ### Available Operations * [get_panora_core_events](#get_panora_core_events) - List Events @@ -18,7 +20,6 @@ s = Panora( api_key="", ) - res = s.events.get_panora_core_events() if res is not None: @@ -35,12 +36,12 @@ if res is not None: | `limit` | *Optional[float]* | :heavy_minus_sign: | N/A | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[List[models.EventResponse]](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/expenses/README.md b/docs/sdks/expenses/README.md index dbdb69e..ac1806e 100644 --- a/docs/sdks/expenses/README.md +++ b/docs/sdks/expenses/README.md @@ -1,6 +1,8 @@ # Expenses (*accounting.expenses*) +## Overview + ### Available Operations * [list](#list) - List Expenses @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.accounting.expenses.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingExpenseResponse](../../models/listaccountingexpenseresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.accounting.expenses.create(x_connection_token="", unified_accounting_expense_input={ "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), "total_amount": 10000, @@ -114,15 +113,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingExpenseOutput](../../models/unifiedaccountingexpenseoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -137,7 +136,6 @@ s = Panora( api_key="", ) - res = s.accounting.expenses.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -155,12 +153,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingExpenseOutput](../../models/unifiedaccountingexpenseoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/fieldmappings/README.md b/docs/sdks/fieldmappings/README.md index e1938c4..2c75c5b 100644 --- a/docs/sdks/fieldmappings/README.md +++ b/docs/sdks/fieldmappings/README.md @@ -1,6 +1,8 @@ # FieldMappings (*field_mappings*) +## Overview + ### Available Operations * [get_field_mapping_values](#get_field_mapping_values) - Retrieve field mappings values @@ -23,7 +25,6 @@ s = Panora( api_key="", ) - s.field_mappings.get_field_mapping_values() # Use the SDK ... @@ -38,9 +39,9 @@ s.field_mappings.get_field_mapping_values() ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## get_field_mappings_entities @@ -55,7 +56,6 @@ s = Panora( api_key="", ) - s.field_mappings.get_field_mappings_entities() # Use the SDK ... @@ -70,9 +70,9 @@ s.field_mappings.get_field_mappings_entities() ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## get_field_mappings @@ -87,7 +87,6 @@ s = Panora( api_key="", ) - s.field_mappings.get_field_mappings() # Use the SDK ... @@ -102,9 +101,9 @@ s.field_mappings.get_field_mappings() ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## definitions @@ -120,7 +119,6 @@ s = Panora( api_key="", ) - res = s.field_mappings.definitions(request={ "object_type_owner": panora_sdk.ObjectTypeOwner.COMPANY, "name": "fav_dish", @@ -141,15 +139,15 @@ if res is not None: | `request` | [models.DefineTargetFieldDto](../../models/definetargetfielddto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.CustomFieldResponse](../../models/customfieldresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## define_custom_field @@ -165,7 +163,6 @@ s = Panora( api_key="", ) - res = s.field_mappings.define_custom_field(request={ "object_type_owner": panora_sdk.CustomFieldCreateDtoObjectTypeOwner.COMPANY, "name": "my_favorite_dish", @@ -189,15 +186,15 @@ if res is not None: | `request` | [models.CustomFieldCreateDto](../../models/customfieldcreatedto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.CustomFieldResponse](../../models/customfieldresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## map @@ -212,7 +209,6 @@ s = Panora( api_key="", ) - res = s.field_mappings.map(request={ "attribute_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "source_custom_field_id": "id_1", @@ -233,12 +229,12 @@ if res is not None: | `request` | [models.MapFieldToProviderDto](../../models/mapfieldtoproviderdto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.CustomFieldResponse](../../models/customfieldresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/files/README.md b/docs/sdks/files/README.md index 1c83e21..cf7840f 100644 --- a/docs/sdks/files/README.md +++ b/docs/sdks/files/README.md @@ -1,6 +1,8 @@ # Files (*filestorage.files*) +## Overview + ### Available Operations * [list](#list) - List Files @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.filestorage.files.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListFilestorageFileResponse](../../models/listfilestoragefileresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.filestorage.files.create(x_connection_token="", unified_filestorage_file_input={ "name": "my_paris_photo.png", "file_url": "https://example.com/my_paris_photo.png", @@ -77,8 +76,8 @@ res = s.filestorage.files.create(x_connection_token="", unified_filestora "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }, remote_data=False) @@ -97,15 +96,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedFilestorageFileOutput](../../models/unifiedfilestoragefileoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -120,7 +119,6 @@ s = Panora( api_key="", ) - res = s.filestorage.files.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -138,12 +136,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original File Storage software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedFilestorageFileOutput](../../models/unifiedfilestoragefileoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/filestorage/README.md b/docs/sdks/filestorage/README.md index 897b31d..c56de61 100644 --- a/docs/sdks/filestorage/README.md +++ b/docs/sdks/filestorage/README.md @@ -1,5 +1,2 @@ # Filestorage -(*filestorage*) - -### Available Operations - +(*filestorage*) \ No newline at end of file diff --git a/docs/sdks/folders/README.md b/docs/sdks/folders/README.md index 163ac2d..bfbfc8a 100644 --- a/docs/sdks/folders/README.md +++ b/docs/sdks/folders/README.md @@ -1,6 +1,8 @@ # Folders (*filestorage.folders*) +## Overview + ### Available Operations * [list](#list) - List Folders @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.filestorage.folders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListFilestorageFolderResponse](../../models/listfilestoragefolderresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.filestorage.folders.create(x_connection_token="", unified_filestorage_folder_input={ "name": "school", "size": "2048", @@ -78,8 +77,8 @@ res = s.filestorage.folders.create(x_connection_token="", unified_filesto "shared_link": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "permission": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }, remote_data=False) @@ -98,15 +97,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedFilestorageFolderOutput](../../models/unifiedfilestoragefolderoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -121,7 +120,6 @@ s = Panora( api_key="", ) - res = s.filestorage.folders.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -139,12 +137,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original File Storage software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedFilestorageFolderOutput](../../models/unifiedfilestoragefolderoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/fulfillments/README.md b/docs/sdks/fulfillments/README.md index 6d11709..e035ba3 100644 --- a/docs/sdks/fulfillments/README.md +++ b/docs/sdks/fulfillments/README.md @@ -1,6 +1,8 @@ # Fulfillments (*ecommerce.fulfillments*) +## Overview + ### Available Operations * [list](#list) - List Fulfillments @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ecommerce.fulfillments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListEcommerceFulfillmentsResponse](../../models/listecommercefulfillmentsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,8 +66,7 @@ s = Panora( api_key="", ) - -res = s.ecommerce.fulfillments.retrieve(x_connection_token="", id="") +res = s.ecommerce.fulfillments.retrieve(x_connection_token="", id="") if res is not None: # handle response @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedEcommerceFulfillmentOutput](../../models/unifiedecommercefulfillmentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/groups/README.md b/docs/sdks/groups/README.md index 15a110a..27be81c 100644 --- a/docs/sdks/groups/README.md +++ b/docs/sdks/groups/README.md @@ -1,14 +1,16 @@ # Groups -(*hris.groups*) +(*filestorage.groups*) + +## Overview ### Available Operations -* [list](#list) - List Groups -* [retrieve](#retrieve) - Retrieve Group +* [list](#list) - List Groups +* [retrieve](#retrieve) - Retrieve Groups ## list -List Groups +List Groups ### Example Usage @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - -res = s.hris.groups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") +res = s.filestorage.groups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,19 +43,19 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response -**[models.ListHrisGroupsResponse](../../models/listhrisgroupsresponse.md)** +**[models.ListFilestorageGroupResponse](../../models/listfilestoragegroupresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve -Retrieve a Group from any connected Hris software +Retrieve Groups from any connected Filestorage software ### Example Usage @@ -66,8 +66,7 @@ s = Panora( api_key="", ) - -res = s.hris.groups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) +res = s.filestorage.groups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response @@ -77,19 +76,19 @@ if res is not None: ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the group you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | +| `id` | *str* | :heavy_check_mark: | id of the permission you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | +| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original File Storage software. | false | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | ### Response -**[models.UnifiedHrisGroupOutput](../../models/unifiedhrisgroupoutput.md)** +**[models.UnifiedFilestorageGroupOutput](../../models/unifiedfilestoragegroupoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/hris/README.md b/docs/sdks/hris/README.md deleted file mode 100644 index 24d2539..0000000 --- a/docs/sdks/hris/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Hris -(*hris*) - -### Available Operations - diff --git a/docs/sdks/incomestatements/README.md b/docs/sdks/incomestatements/README.md index 48e6318..2def941 100644 --- a/docs/sdks/incomestatements/README.md +++ b/docs/sdks/incomestatements/README.md @@ -1,6 +1,8 @@ # Incomestatements (*accounting.incomestatements*) +## Overview + ### Available Operations * [list](#list) - List IncomeStatements @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.incomestatements.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingIncomeStatementResponse](../../models/listaccountingincomestatementresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.incomestatements.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingIncomestatementOutput](../../models/unifiedaccountingincomestatementoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/interviews/README.md b/docs/sdks/interviews/README.md deleted file mode 100644 index 074cb2e..0000000 --- a/docs/sdks/interviews/README.md +++ /dev/null @@ -1,155 +0,0 @@ -# Interviews -(*ats.interviews*) - -### Available Operations - -* [list](#list) - List Interviews -* [create](#create) - Create Interviews -* [retrieve](#retrieve) - Retrieve Interviews - -## list - -List Interviews - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.interviews.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsInterviewResponse](../../models/listatsinterviewresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Interviews in any supported Ats software - -### Example Usage - -```python -import dateutil.parser -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.interviews.create(x_connection_token="", unified_ats_interview_input={ - "status": "SCHEDULED", - "application_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "job_interview_stage_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "organized_by": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "interviewers": [ - "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - ], - "location": "San Francisco", - "start_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "end_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_created_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "remote_updated_at": dateutil.parser.isoparse("2024-10-01T12:00:00Z"), - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, -}, remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_ats_interview_input` | [models.UnifiedAtsInterviewInput](../../models/unifiedatsinterviewinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsInterviewOutput](../../models/unifiedatsinterviewoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Interviews from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.interviews.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the interview you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsInterviewOutput](../../models/unifiedatsinterviewoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/invoices/README.md b/docs/sdks/invoices/README.md index 8fa6311..ef6ec89 100644 --- a/docs/sdks/invoices/README.md +++ b/docs/sdks/invoices/README.md @@ -1,6 +1,8 @@ # Invoices (*accounting.invoices*) +## Overview + ### Available Operations * [list](#list) - List Invoices @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.accounting.invoices.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingInvoiceResponse](../../models/listaccountinginvoiceresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.accounting.invoices.create(x_connection_token="", unified_accounting_invoice_input={ "type": "Sales", "number": "INV-001", @@ -121,15 +120,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingInvoiceOutput](../../models/unifiedaccountinginvoiceoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -144,7 +143,6 @@ s = Panora( api_key="", ) - res = s.accounting.invoices.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -162,12 +160,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingInvoiceOutput](../../models/unifiedaccountinginvoiceoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/items/README.md b/docs/sdks/items/README.md index 8f4fa3e..d765d35 100644 --- a/docs/sdks/items/README.md +++ b/docs/sdks/items/README.md @@ -1,6 +1,8 @@ # Items (*accounting.items*) +## Overview + ### Available Operations * [list](#list) - List Items @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.items.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingItemResponse](../../models/listaccountingitemresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.items.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingItemOutput](../../models/unifiedaccountingitemoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/jobinterviewstages/README.md b/docs/sdks/jobinterviewstages/README.md deleted file mode 100644 index be5b51c..0000000 --- a/docs/sdks/jobinterviewstages/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Jobinterviewstages -(*ats.jobinterviewstages*) - -### Available Operations - -* [list](#list) - List JobInterviewStages -* [retrieve](#retrieve) - Retrieve Job Interview Stages - -## list - -List JobInterviewStages - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.jobinterviewstages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsJobInterviewStageResponse](../../models/listatsjobinterviewstageresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Job Interview Stages from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.jobinterviewstages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the jobinterviewstage you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsJobinterviewstageOutput](../../models/unifiedatsjobinterviewstageoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/jobs/README.md b/docs/sdks/jobs/README.md deleted file mode 100644 index cee20bf..0000000 --- a/docs/sdks/jobs/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Jobs -(*ats.jobs*) - -### Available Operations - -* [list](#list) - List Jobs -* [retrieve](#retrieve) - Retrieve Jobs - -## list - -List Jobs - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.jobs.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsJobResponse](../../models/listatsjobresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Jobs from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.jobs.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the job you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsJobOutput](../../models/unifiedatsjoboutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/journalentries/README.md b/docs/sdks/journalentries/README.md index dc0b425..8751387 100644 --- a/docs/sdks/journalentries/README.md +++ b/docs/sdks/journalentries/README.md @@ -1,6 +1,8 @@ # Journalentries (*accounting.journalentries*) +## Overview + ### Available Operations * [list](#list) - List JournalEntrys @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.accounting.journalentries.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingJournalEntryResponse](../../models/listaccountingjournalentryresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.accounting.journalentries.create(x_connection_token="", unified_accounting_journalentry_input={ "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), "payments": [ @@ -120,15 +119,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingJournalentryOutput](../../models/unifiedaccountingjournalentryoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -143,7 +142,6 @@ s = Panora( api_key="", ) - res = s.accounting.journalentries.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -161,12 +159,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingJournalentryOutput](../../models/unifiedaccountingjournalentryoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/linkedusers/README.md b/docs/sdks/linkedusers/README.md index 9281bc1..27c3f9b 100644 --- a/docs/sdks/linkedusers/README.md +++ b/docs/sdks/linkedusers/README.md @@ -1,13 +1,53 @@ # LinkedUsers (*linked_users*) +## Overview + ### Available Operations +* [remote_id](#remote_id) - Retrieve a Linked User From A Remote Id * [create](#create) - Create Linked Users * [list](#list) - List Linked Users * [import_batch](#import_batch) - Add Batch Linked Users * [retrieve](#retrieve) - Retrieve Linked Users -* [remote_id](#remote_id) - Retrieve a Linked User From A Remote Id + +## remote_id + +Retrieve a Linked User From A Remote Id + +### Example Usage + +```python +from panora_sdk import Panora + +s = Panora( + api_key="", +) + +res = s.linked_users.remote_id(remote_id="id_1") + +if res is not None: + # handle response + pass + +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | +| `remote_id` | *str* | :heavy_check_mark: | N/A | id_1 | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | + +### Response + +**[models.LinkedUserResponse](../../models/linkeduserresponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------- | --------------- | --------------- | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -22,7 +62,6 @@ s = Panora( api_key="", ) - res = s.linked_users.create(request={ "linked_user_origin_id": "id_1", "alias": "acme", @@ -41,15 +80,15 @@ if res is not None: | `request` | [models.CreateLinkedUserDto](../../models/createlinkeduserdto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.LinkedUserResponse](../../models/linkeduserresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## list @@ -64,7 +103,6 @@ s = Panora( api_key="", ) - res = s.linked_users.list() if res is not None: @@ -79,15 +117,15 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[List[models.LinkedUserResponse]](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## import_batch @@ -102,7 +140,6 @@ s = Panora( api_key="", ) - res = s.linked_users.import_batch(request={ "linked_user_origin_ids": [ "id_1", @@ -123,15 +160,15 @@ if res is not None: | `request` | [models.CreateBatchLinkedUserDto](../../models/createbatchlinkeduserdto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[List[models.LinkedUserResponse]](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -146,7 +183,6 @@ s = Panora( api_key="", ) - res = s.linked_users.retrieve(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") if res is not None: @@ -162,51 +198,12 @@ if res is not None: | `id` | *str* | :heavy_check_mark: | N/A | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.LinkedUserResponse](../../models/linkeduserresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## remote_id - -Retrieve a Linked User From A Remote Id -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.linked_users.remote_id(remote_id="id_1") - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `remote_id` | *str* | :heavy_check_mark: | N/A | id_1 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.LinkedUserResponse](../../models/linkeduserresponse.md)** ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/lists/README.md b/docs/sdks/lists/README.md index b475e6a..638aa76 100644 --- a/docs/sdks/lists/README.md +++ b/docs/sdks/lists/README.md @@ -1,6 +1,8 @@ # Lists (*marketingautomation.lists*) +## Overview + ### Available Operations * [list](#list) - List Lists @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.lists.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingautomationListsResponse](../../models/listmarketingautomationlistsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.lists.create(x_connection_token="", unified_marketingautomation_list_input={}) if res is not None: @@ -85,15 +84,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedMarketingautomationListOutput](../../models/unifiedmarketingautomationlistoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -108,7 +107,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.lists.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -126,12 +124,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationListOutput](../../models/unifiedmarketingautomationlistoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/locations/README.md b/docs/sdks/locations/README.md deleted file mode 100644 index 00572ed..0000000 --- a/docs/sdks/locations/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Locations -(*hris.locations*) - -### Available Operations - -* [list](#list) - List Locations -* [retrieve](#retrieve) - Retrieve Location - -## list - -List Locations - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.locations.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisLocationsResponse](../../models/listhrislocationsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a Location from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.locations.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the location you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisLocationOutput](../../models/unifiedhrislocationoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/login/README.md b/docs/sdks/login/README.md index 0a9a730..f7b08a0 100644 --- a/docs/sdks/login/README.md +++ b/docs/sdks/login/README.md @@ -1,6 +1,8 @@ # Login (*auth.login*) +## Overview + ### Available Operations * [sign_in](#sign_in) - Log In @@ -18,8 +20,8 @@ s = Panora( api_key="", ) - s.auth.login.sign_in(request={ + "id_user": "", "email": "Oda.Treutel97@hotmail.com", "password_hash": "", }) @@ -37,6 +39,6 @@ s.auth.login.sign_in(request={ ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/marketingautomation/README.md b/docs/sdks/marketingautomation/README.md index 7b6229f..ee289d0 100644 --- a/docs/sdks/marketingautomation/README.md +++ b/docs/sdks/marketingautomation/README.md @@ -1,5 +1,2 @@ # Marketingautomation -(*marketingautomation*) - -### Available Operations - +(*marketingautomation*) \ No newline at end of file diff --git a/docs/sdks/messages/README.md b/docs/sdks/messages/README.md index ca29ee5..0b0ad18 100644 --- a/docs/sdks/messages/README.md +++ b/docs/sdks/messages/README.md @@ -1,6 +1,8 @@ # Messages (*marketingautomation.messages*) +## Overview + ### Available Operations * [list](#list) - List Messages @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.messages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingautomationMessagesResponse](../../models/listmarketingautomationmessagesresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.messages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationMessageOutput](../../models/unifiedmarketingautomationmessageoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/notes/README.md b/docs/sdks/notes/README.md index 0539369..36edec2 100644 --- a/docs/sdks/notes/README.md +++ b/docs/sdks/notes/README.md @@ -1,6 +1,8 @@ # Notes (*crm.notes*) +## Overview + ### Available Operations * [list](#list) - List Notes @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.crm.notes.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmNoteResponse](../../models/listcrmnoteresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.crm.notes.create(x_connection_token="", unified_crm_note_input={ "content": "My notes taken during the meeting", "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", @@ -75,8 +74,8 @@ res = s.crm.notes.create(x_connection_token="", unified_crm_note_input={ "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }, remote_data=False) @@ -95,15 +94,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmNoteOutput](../../models/unifiedcrmnoteoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -118,7 +117,6 @@ s = Panora( api_key="", ) - res = s.crm.notes.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -136,12 +134,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmNoteOutput](../../models/unifiedcrmnoteoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/offers/README.md b/docs/sdks/offers/README.md deleted file mode 100644 index 235737e..0000000 --- a/docs/sdks/offers/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Offers -(*ats.offers*) - -### Available Operations - -* [list](#list) - List Offers -* [retrieve](#retrieve) - Retrieve Offers - -## list - -List Offers - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.offers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsOfferResponse](../../models/listatsofferresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Offers from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.offers.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the offer you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsOfferOutput](../../models/unifiedatsofferoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/offices/README.md b/docs/sdks/offices/README.md deleted file mode 100644 index daedc03..0000000 --- a/docs/sdks/offices/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Offices -(*ats.offices*) - -### Available Operations - -* [list](#list) - List Offices -* [retrieve](#retrieve) - Retrieve Offices - -## list - -List Offices - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.offices.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsOfficeResponse](../../models/listatsofficeresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Offices from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.offices.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the office you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsOfficeOutput](../../models/unifiedatsofficeoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/orders/README.md b/docs/sdks/orders/README.md index 5f3904c..8e96884 100644 --- a/docs/sdks/orders/README.md +++ b/docs/sdks/orders/README.md @@ -1,6 +1,8 @@ # Orders (*ecommerce.orders*) +## Overview + ### Available Operations * [list](#list) - List Orders @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.ecommerce.orders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListEcommerceOrdersResponse](../../models/listecommerceordersresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.ecommerce.orders.create(x_connection_token="", unified_ecommerce_order_input={ "order_status": "UNSHIPPED", "order_number": "19823838833", @@ -111,15 +110,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedEcommerceOrderOutput](../../models/unifiedecommerceorderoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -134,8 +133,7 @@ s = Panora( api_key="", ) - -res = s.ecommerce.orders.retrieve(x_connection_token="", id="") +res = s.ecommerce.orders.retrieve(x_connection_token="", id="") if res is not None: # handle response @@ -152,12 +150,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedEcommerceOrderOutput](../../models/unifiedecommerceorderoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panora/README.md b/docs/sdks/panora/README.md index 2b42656..5bf2ebc 100644 --- a/docs/sdks/panora/README.md +++ b/docs/sdks/panora/README.md @@ -1,6 +1,5 @@ # Panora SDK - ## Overview Panora API: A unified API to ship integrations @@ -21,7 +20,6 @@ s = Panora( api_key="", ) - res = s.hello() if res is not None: @@ -36,15 +34,15 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[str](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## health @@ -57,7 +55,6 @@ s = Panora( api_key="", ) - res = s.health() if res is not None: @@ -72,12 +69,12 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[float](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoraaccountingcontacts/README.md b/docs/sdks/panoraaccountingcontacts/README.md index e13445b..e3a9051 100644 --- a/docs/sdks/panoraaccountingcontacts/README.md +++ b/docs/sdks/panoraaccountingcontacts/README.md @@ -1,6 +1,8 @@ # PanoraAccountingContacts (*accounting.contacts*) +## Overview + ### Available Operations * [list](#list) - List Contacts @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.accounting.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingContactsResponse](../../models/listaccountingcontactsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.accounting.contacts.create(x_connection_token="", unified_accounting_contact_input={ "name": "John Doe", "is_supplier": True, @@ -96,15 +95,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingContactOutput](../../models/unifiedaccountingcontactoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -119,7 +118,6 @@ s = Panora( api_key="", ) - res = s.accounting.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -137,12 +135,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingContactOutput](../../models/unifiedaccountingcontactoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoraaccounts/README.md b/docs/sdks/panoraaccounts/README.md index 395ffc9..d04dbe2 100644 --- a/docs/sdks/panoraaccounts/README.md +++ b/docs/sdks/panoraaccounts/README.md @@ -1,6 +1,8 @@ # PanoraAccounts (*accounting.accounts*) +## Overview + ### Available Operations * [list](#list) - List Accounts @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.accounting.accounts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingAccountsResponse](../../models/listaccountingaccountsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.accounting.accounts.create(x_connection_token="", unified_accounting_account_input={ "name": "Cash", "description": "Main cash account for daily operations", @@ -97,15 +96,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingAccountOutput](../../models/unifiedaccountingaccountoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -120,7 +119,6 @@ s = Panora( api_key="", ) - res = s.accounting.accounts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -138,12 +136,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingAccountOutput](../../models/unifiedaccountingaccountoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoraatsusers/README.md b/docs/sdks/panoraatsusers/README.md deleted file mode 100644 index d0f1dae..0000000 --- a/docs/sdks/panoraatsusers/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# PanoraAtsUsers -(*ats.users*) - -### Available Operations - -* [list](#list) - List Users -* [retrieve](#retrieve) - Retrieve Users - -## list - -List Users - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsUsersResponse](../../models/listatsusersresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Users from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the user you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsUserOutput](../../models/unifiedatsuseroutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/panoraattachments/README.md b/docs/sdks/panoraattachments/README.md index 8ce1ef0..4883450 100644 --- a/docs/sdks/panoraattachments/README.md +++ b/docs/sdks/panoraattachments/README.md @@ -1,5 +1,7 @@ # PanoraAttachments -(*accounting.attachments*) +(*ticketing.attachments*) + +## Overview ### Available Operations @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - -res = s.accounting.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") +res = s.ticketing.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,19 +44,19 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response -**[models.ListAccountingAttachmentsResponse](../../models/listaccountingattachmentsresponse.md)** +**[models.ListTicketingAttachmentsResponse](../../models/listticketingattachmentsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create -Create attachments in any supported Accounting software +Create Attachments in any supported Ticketing software ### Example Usage @@ -67,13 +67,17 @@ s = Panora( api_key="", ) - -res = s.accounting.attachments.create(x_connection_token="", unified_accounting_attachment_input={ - "file_name": "invoice.pdf", - "file_url": "https://example.com/files/invoice.pdf", - "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": {}, -}, remote_data=False) +res = s.ticketing.attachments.create(x_connection_token="", unified_ticketing_attachment_input={ + "file_name": "features_planning.pdf", + "file_url": "https://example.com/features_planning.pdf", + "uploader": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "comment_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", + "field_mappings": { + "fav_color": "red", + "fav_dish": "broccoli", + }, +}) if res is not None: # handle response @@ -83,26 +87,26 @@ if res is not None: ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `unified_accounting_attachment_input` | [models.UnifiedAccountingAttachmentInput](../../models/unifiedaccountingattachmentinput.md) | :heavy_check_mark: | N/A | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | +| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | +| `unified_ticketing_attachment_input` | [models.UnifiedTicketingAttachmentInput](../../models/unifiedticketingattachmentinput.md) | :heavy_check_mark: | N/A | +| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | ### Response -**[models.UnifiedAccountingAttachmentOutput](../../models/unifiedaccountingattachmentoutput.md)** +**[models.UnifiedTicketingAttachmentOutput](../../models/unifiedticketingattachmentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve -Retrieve attachments from any connected Accounting software +Retrieve Attachments from any connected Ticketing software ### Example Usage @@ -113,8 +117,7 @@ s = Panora( api_key="", ) - -res = s.accounting.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) +res = s.ticketing.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: # handle response @@ -127,16 +130,16 @@ if res is not None: | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the attachment you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | +| `id` | *str* | :heavy_check_mark: | id of the attachment you want to retrive. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | +| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response -**[models.UnifiedAccountingAttachmentOutput](../../models/unifiedaccountingattachmentoutput.md)** +**[models.UnifiedTicketingAttachmentOutput](../../models/unifiedticketingattachmentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoracompanies/README.md b/docs/sdks/panoracompanies/README.md deleted file mode 100644 index e6fabc3..0000000 --- a/docs/sdks/panoracompanies/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# PanoraCompanies -(*hris.companies*) - -### Available Operations - -* [list](#list) - List Companies -* [retrieve](#retrieve) - Retrieve Company - -## list - -List Companies - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.companies.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisCompaniesResponse](../../models/listhriscompaniesresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a Company from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.companies.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the company you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisCompanyOutput](../../models/unifiedhriscompanyoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/panoracontacts/README.md b/docs/sdks/panoracontacts/README.md index ebd0a40..62844f9 100644 --- a/docs/sdks/panoracontacts/README.md +++ b/docs/sdks/panoracontacts/README.md @@ -1,6 +1,8 @@ # PanoraContacts (*crm.contacts*) +## Overview + ### Available Operations * [list](#list) - List CRM Contacts @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.crm.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmContactsResponse](../../models/listcrmcontactsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.crm.contacts.create(x_connection_token="", unified_crm_contact_input={ "first_name": "John", "last_name": "Doe", @@ -79,7 +78,7 @@ res = s.crm.contacts.create(x_connection_token="", unified_crm_contact_in ], "phone_numbers": [ { - "phone_number": "", + "phone_number": "1-809-839-8041", "phone_type": "", }, ], @@ -97,8 +96,8 @@ res = s.crm.contacts.create(x_connection_token="", unified_crm_contact_in ], "user_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }, remote_data=False) @@ -117,15 +116,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original CRM software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmContactOutput](../../models/unifiedcrmcontactoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -140,7 +139,6 @@ s = Panora( api_key="", ) - res = s.crm.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -158,12 +156,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original CRM software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmContactOutput](../../models/unifiedcrmcontactoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoraevents/README.md b/docs/sdks/panoraevents/README.md index 3e4cc7c..60143b8 100644 --- a/docs/sdks/panoraevents/README.md +++ b/docs/sdks/panoraevents/README.md @@ -1,6 +1,8 @@ # PanoraEvents (*marketingautomation.events*) +## Overview + ### Available Operations * [list](#list) - List Events @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.events.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingAutomationEventsResponse](../../models/listmarketingautomationeventsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.events.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationEventOutput](../../models/unifiedmarketingautomationeventoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panorafilestorageusers/README.md b/docs/sdks/panorafilestorageusers/README.md index ec39d60..31cc439 100644 --- a/docs/sdks/panorafilestorageusers/README.md +++ b/docs/sdks/panorafilestorageusers/README.md @@ -1,6 +1,8 @@ # PanoraFilestorageUsers (*filestorage.users*) +## Overview + ### Available Operations * [list](#list) - List Users @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.filestorage.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListFilestorageUsersResponse](../../models/listfilestorageusersresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.filestorage.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original File Storage software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedFilestorageUserOutput](../../models/unifiedfilestorageuseroutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoragroups/README.md b/docs/sdks/panoragroups/README.md deleted file mode 100644 index adc85a4..0000000 --- a/docs/sdks/panoragroups/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# PanoraGroups -(*filestorage.groups*) - -### Available Operations - -* [list](#list) - List Groups -* [retrieve](#retrieve) - Retrieve Groups - -## list - -List Groups - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.filestorage.groups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListFilestorageGroupResponse](../../models/listfilestoragegroupresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Groups from any connected Filestorage software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.filestorage.groups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the permission you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original File Storage software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedFilestorageGroupOutput](../../models/unifiedfilestoragegroupoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/panoramarketingautomationcontacts/README.md b/docs/sdks/panoramarketingautomationcontacts/README.md index b1f5942..56ea43e 100644 --- a/docs/sdks/panoramarketingautomationcontacts/README.md +++ b/docs/sdks/panoramarketingautomationcontacts/README.md @@ -1,6 +1,8 @@ # PanoraMarketingautomationContacts (*marketingautomation.contacts*) +## Overview + ### Available Operations * [list](#list) - List Contacts @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.contacts.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingAutomationContactsResponse](../../models/listmarketingautomationcontactsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.contacts.create(x_connection_token="", unified_marketingautomation_contact_input={}, remote_data=False) if res is not None: @@ -85,15 +84,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationContactOutput](../../models/unifiedmarketingautomationcontactoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -108,7 +107,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.contacts.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -126,12 +124,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationContactOutput](../../models/unifiedmarketingautomationcontactoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoramarketingautomationusers/README.md b/docs/sdks/panoramarketingautomationusers/README.md index 2ce22f3..749c985 100644 --- a/docs/sdks/panoramarketingautomationusers/README.md +++ b/docs/sdks/panoramarketingautomationusers/README.md @@ -1,6 +1,8 @@ # PanoraMarketingautomationUsers (*marketingautomation.users*) +## Overview + ### Available Operations * [list](#list) - List Users @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingAutomationUsersResponse](../../models/listmarketingautomationusersresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationUserOutput](../../models/unifiedmarketingautomationuseroutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/panoratags/README.md b/docs/sdks/panoratags/README.md deleted file mode 100644 index ad910d1..0000000 --- a/docs/sdks/panoratags/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# PanoraTags -(*ats.tags*) - -### Available Operations - -* [list](#list) - List Tags -* [retrieve](#retrieve) - Retrieve Tags - -## list - -List Tags - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.tags.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsTagsResponse](../../models/listatstagsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Tags from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.tags.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the tag you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsTagOutput](../../models/unifiedatstagoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/panoraticketingattachments/README.md b/docs/sdks/panoraticketingattachments/README.md deleted file mode 100644 index a187047..0000000 --- a/docs/sdks/panoraticketingattachments/README.md +++ /dev/null @@ -1,147 +0,0 @@ -# PanoraTicketingAttachments -(*ticketing.attachments*) - -### Available Operations - -* [list](#list) - List Attachments -* [create](#create) - Create Attachments -* [retrieve](#retrieve) - Retrieve Attachments - -## list - -List Attachments - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ticketing.attachments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListTicketingAttachmentsResponse](../../models/listticketingattachmentsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Attachments in any supported Ticketing software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ticketing.attachments.create(x_connection_token="", unified_ticketing_attachment_input={ - "file_name": "features_planning.pdf", - "file_url": "https://example.com/features_planning.pdf", - "uploader": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "ticket_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "comment_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "field_mappings": { - "fav_dish": "broccoli", - "fav_color": "red", - }, -}) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `unified_ticketing_attachment_input` | [models.UnifiedTicketingAttachmentInput](../../models/unifiedticketingattachmentinput.md) | :heavy_check_mark: | N/A | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - - -### Response - -**[models.UnifiedTicketingAttachmentOutput](../../models/unifiedticketingattachmentoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Attachments from any connected Ticketing software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ticketing.attachments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the attachment you want to retrive. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedTicketingAttachmentOutput](../../models/unifiedticketingattachmentoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/panorausers/README.md b/docs/sdks/panorausers/README.md index 73cb6d9..37d5825 100644 --- a/docs/sdks/panorausers/README.md +++ b/docs/sdks/panorausers/README.md @@ -1,6 +1,8 @@ # PanoraUsers (*crm.users*) +## Overview + ### Available Operations * [list](#list) - List Users @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.crm.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmUsersResponse](../../models/listcrmusersresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.crm.users.retrieve(x_connection_token="", id="b008e199-eda9-4629-bd41-a01b6195864a", remote_data=True) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | true | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmUserOutput](../../models/unifiedcrmuseroutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/passthrough/README.md b/docs/sdks/passthrough/README.md index d3bf3ac..4d9e716 100644 --- a/docs/sdks/passthrough/README.md +++ b/docs/sdks/passthrough/README.md @@ -1,6 +1,8 @@ # Passthrough (*passthrough*) +## Overview + ### Available Operations * [request](#request) - Make a passthrough request @@ -19,10 +21,16 @@ s = Panora( api_key="", ) - res = s.passthrough.request(x_connection_token="", pass_through_request_dto={ "method": panora_sdk.PassThroughRequestDtoMethod.GET, "path": "/dev", + "data": {}, + "request_format": { + + }, + "override_base_url": { + "key": "https://equatorial-government.com/", + }, }) if res is not None: @@ -39,12 +47,12 @@ if res is not None: | `pass_through_request_dto` | [models.PassThroughRequestDto](../../models/passthroughrequestdto.md) | :heavy_check_mark: | N/A | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response -**[models.RequestResponse](../../models/requestresponse.md)** +**[models.RequestResponseBody](../../models/requestresponsebody.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/paygroups/README.md b/docs/sdks/paygroups/README.md deleted file mode 100644 index 516288d..0000000 --- a/docs/sdks/paygroups/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Paygroups -(*hris.paygroups*) - -### Available Operations - -* [list](#list) - List Pay Groups -* [retrieve](#retrieve) - Retrieve Pay Group - -## list - -List Pay Groups - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.paygroups.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisPaygroupsResponse](../../models/listhrispaygroupsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a Pay Group from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.paygroups.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the paygroup you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisPaygroupOutput](../../models/unifiedhrispaygroupoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/payments/README.md b/docs/sdks/payments/README.md index 11ff6f0..b6d592c 100644 --- a/docs/sdks/payments/README.md +++ b/docs/sdks/payments/README.md @@ -1,6 +1,8 @@ # Payments (*accounting.payments*) +## Overview + ### Available Operations * [list](#list) - List Payments @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.accounting.payments.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingPaymentResponse](../../models/listaccountingpaymentresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.accounting.payments.create(x_connection_token="", unified_accounting_payment_input={ "invoice_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "transaction_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), @@ -114,15 +113,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingPaymentOutput](../../models/unifiedaccountingpaymentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -137,7 +136,6 @@ s = Panora( api_key="", ) - res = s.accounting.payments.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -155,12 +153,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingPaymentOutput](../../models/unifiedaccountingpaymentoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/payrollruns/README.md b/docs/sdks/payrollruns/README.md deleted file mode 100644 index 9123cc3..0000000 --- a/docs/sdks/payrollruns/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Payrollruns -(*hris.payrollruns*) - -### Available Operations - -* [list](#list) - List Payroll Runs -* [retrieve](#retrieve) - Retrieve Payroll Run - -## list - -List Payroll Runs - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.payrollruns.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisPayrollRunsResponse](../../models/listhrispayrollrunsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a Payroll Run from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.payrollruns.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the payroll run you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisPayrollrunOutput](../../models/unifiedhrispayrollrunoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/phonenumbers/README.md b/docs/sdks/phonenumbers/README.md index 36980b7..667bdd8 100644 --- a/docs/sdks/phonenumbers/README.md +++ b/docs/sdks/phonenumbers/README.md @@ -1,6 +1,8 @@ # Phonenumbers (*accounting.phonenumbers*) +## Overview + ### Available Operations * [list](#list) - List PhoneNumbers @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.phonenumbers.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingPhonenumberResponse](../../models/listaccountingphonenumberresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.phonenumbers.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingPhonenumberOutput](../../models/unifiedaccountingphonenumberoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/products/README.md b/docs/sdks/products/README.md index da0e3fd..3fcfb84 100644 --- a/docs/sdks/products/README.md +++ b/docs/sdks/products/README.md @@ -1,6 +1,8 @@ # Products (*ecommerce.products*) +## Overview + ### Available Operations * [list](#list) - List Products @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.ecommerce.products.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListEcommerceProductsResponse](../../models/listecommerceproductsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.ecommerce.products.create(x_connection_token="", unified_ecommerce_product_input={ "product_url": "https://product_url/tee", "product_type": "teeshirt", @@ -101,15 +100,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedEcommerceProductOutput](../../models/unifiedecommerceproductoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -124,8 +123,7 @@ s = Panora( api_key="", ) - -res = s.ecommerce.products.retrieve(x_connection_token="", id="") +res = s.ecommerce.products.retrieve(x_connection_token="", id="") if res is not None: # handle response @@ -142,12 +140,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedEcommerceProductOutput](../../models/unifiedecommerceproductoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/projects/README.md b/docs/sdks/projects/README.md index 903d3d6..58fda5f 100644 --- a/docs/sdks/projects/README.md +++ b/docs/sdks/projects/README.md @@ -1,6 +1,8 @@ # Projects (*projects*) +## Overview + ### Available Operations * [get_projects](#get_projects) - Retrieve projects @@ -19,7 +21,6 @@ s = Panora( api_key="", ) - res = s.projects.get_projects() if res is not None: @@ -34,15 +35,15 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[List[models.ProjectResponse]](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -57,7 +58,6 @@ s = Panora( api_key="", ) - res = s.projects.create(request={ "name": "Project Name", "id_user": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", @@ -77,12 +77,12 @@ if res is not None: | `request` | [models.CreateProjectDto](../../models/createprojectdto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.ProjectResponse](../../models/projectresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/purchaseorders/README.md b/docs/sdks/purchaseorders/README.md index e2c0d1c..9f173a8 100644 --- a/docs/sdks/purchaseorders/README.md +++ b/docs/sdks/purchaseorders/README.md @@ -1,6 +1,8 @@ # Purchaseorders (*accounting.purchaseorders*) +## Overview + ### Available Operations * [list](#list) - List PurchaseOrders @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.accounting.purchaseorders.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingPurchaseOrderResponse](../../models/listaccountingpurchaseorderresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.accounting.purchaseorders.create(x_connection_token="", unified_accounting_purchaseorder_input={ "status": "Pending", "issue_date": dateutil.parser.isoparse("2024-06-15T12:00:00Z"), @@ -117,15 +116,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingPurchaseorderOutput](../../models/unifiedaccountingpurchaseorderoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -140,7 +139,6 @@ s = Panora( api_key="", ) - res = s.accounting.purchaseorders.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -158,12 +156,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingPurchaseorderOutput](../../models/unifiedaccountingpurchaseorderoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/query/README.md b/docs/sdks/query/README.md deleted file mode 100644 index 8ac1583..0000000 --- a/docs/sdks/query/README.md +++ /dev/null @@ -1,49 +0,0 @@ -# Query -(*rag.query*) - -### Available Operations - -* [query](#query) - Query using RAG Search - -## query - -Query across your connected data sources using RAG Search - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.rag.query.query(x_connection_token="", query_body={ - "query": "When does Panora incorporated?", - "top_k": 3, -}) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `query_body` | [models.QueryBody](../../models/querybody.md) | :heavy_check_mark: | N/A | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - - -### Response - -**[models.QueryResponseBody](../../models/queryresponsebody.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/rag/README.md b/docs/sdks/rag/README.md index 57579c1..93504de 100644 --- a/docs/sdks/rag/README.md +++ b/docs/sdks/rag/README.md @@ -1,5 +1,50 @@ # Rag (*rag*) +## Overview + ### Available Operations +* [query](#query) - Query using RAG Search + +## query + +Query across your connected data sources using RAG Search + +### Example Usage + +```python +from panora_sdk import Panora + +s = Panora( + api_key="", +) + +res = s.rag.query(x_connection_token="", query_body={ + "query": "When does Panora incorporated?", + "top_k": 3, +}) + +if res is not None: + # handle response + pass + +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | +| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | +| `query_body` | [models.QueryBody](../../models/querybody.md) | :heavy_check_mark: | N/A | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | + +### Response + +**[List[models.RagQueryOutput]](../../models/.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------- | --------------- | --------------- | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/rejectreasons/README.md b/docs/sdks/rejectreasons/README.md deleted file mode 100644 index 2c76a3e..0000000 --- a/docs/sdks/rejectreasons/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Rejectreasons -(*ats.rejectreasons*) - -### Available Operations - -* [list](#list) - List RejectReasons -* [retrieve](#retrieve) - Retrieve Reject Reasons - -## list - -List RejectReasons - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.rejectreasons.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsRejectReasonsResponse](../../models/listatsrejectreasonsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Reject Reasons from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.rejectreasons.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the rejectreason you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsRejectreasonOutput](../../models/unifiedatsrejectreasonoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/retryid/README.md b/docs/sdks/retryid/README.md index 11525f0..2f6a52b 100644 --- a/docs/sdks/retryid/README.md +++ b/docs/sdks/retryid/README.md @@ -1,6 +1,8 @@ # Retryid (*passthrough.retryid*) +## Overview + ### Available Operations * [get_retried_request_response](#get_retried_request_response) - Retrieve response of a failed passthrough request due to rate limits @@ -18,7 +20,6 @@ s = Panora( api_key="", ) - s.passthrough.retryid.get_retried_request_response(retry_id="") # Use the SDK ... @@ -34,6 +35,6 @@ s.passthrough.retryid.get_retried_request_response(retry_id="") ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/scorecards/README.md b/docs/sdks/scorecards/README.md deleted file mode 100644 index f78a754..0000000 --- a/docs/sdks/scorecards/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Scorecards -(*ats.scorecards*) - -### Available Operations - -* [list](#list) - List ScoreCards -* [retrieve](#retrieve) - Retrieve Score Cards - -## list - -List ScoreCards - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.scorecards.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListAtsScorecardResponse](../../models/listatsscorecardresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Score Cards from any connected Ats software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.ats.scorecards.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the scorecard you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ats software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedAtsScorecardOutput](../../models/unifiedatsscorecardoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/stages/README.md b/docs/sdks/stages/README.md index 7ea231e..8d6f51d 100644 --- a/docs/sdks/stages/README.md +++ b/docs/sdks/stages/README.md @@ -1,6 +1,8 @@ # Stages (*crm.stages*) +## Overview + ### Available Operations * [list](#list) - List Stages @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.crm.stages.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmStagesResponse](../../models/listcrmstagesresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.crm.stages.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmStageOutput](../../models/unifiedcrmstageoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/sync/README.md b/docs/sdks/sync/README.md index 6ae9197..141ddf6 100644 --- a/docs/sdks/sync/README.md +++ b/docs/sdks/sync/README.md @@ -1,6 +1,8 @@ # Sync (*sync*) +## Overview + ### Available Operations * [status](#status) - Retrieve sync status of a certain vertical @@ -22,7 +24,6 @@ s = Panora( api_key="", ) - s.sync.status(vertical=panora_sdk.PathParamVertical.TICKETING) # Use the SDK ... @@ -38,9 +39,9 @@ s.sync.status(vertical=panora_sdk.PathParamVertical.TICKETING) ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## resync @@ -55,7 +56,6 @@ s = Panora( api_key="", ) - res = s.sync.resync() if res is not None: @@ -70,15 +70,15 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.ResyncStatusDto](../../models/resyncstatusdto.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## update_pull_frequency @@ -93,20 +93,15 @@ s = Panora( api_key="", ) - -res = s.sync.update_pull_frequency(request={ +s.sync.update_pull_frequency(request={ "crm": 1800, - "ats": 3600, - "hris": 7200, "accounting": 14400, "filestorage": 28800, "ecommerce": 43200, "ticketing": 86400, }) -if res is not None: - # handle response - pass +# Use the SDK ... ``` @@ -117,15 +112,11 @@ if res is not None: | `request` | [models.UpdatePullFrequencyDto](../../models/updatepullfrequencydto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - -### Response - -**[models.UpdatePullFrequencyResponseBody](../../models/updatepullfrequencyresponsebody.md)** ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## get_pull_frequency @@ -140,7 +131,6 @@ s = Panora( api_key="", ) - res = s.sync.get_pull_frequency() if res is not None: @@ -155,12 +145,12 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UpdatePullFrequencyDto](../../models/updatepullfrequencydto.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/tags/README.md b/docs/sdks/tags/README.md index 3bb6247..bb0aeeb 100644 --- a/docs/sdks/tags/README.md +++ b/docs/sdks/tags/README.md @@ -1,6 +1,8 @@ # Tags (*ticketing.tags*) +## Overview + ### Available Operations * [list](#list) - List Tags @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ticketing.tags.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingTagsResponse](../../models/listticketingtagsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.ticketing.tags.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedTicketingTagOutput](../../models/unifiedticketingtagoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/tasks/README.md b/docs/sdks/tasks/README.md index 5270725..438a3b4 100644 --- a/docs/sdks/tasks/README.md +++ b/docs/sdks/tasks/README.md @@ -1,6 +1,8 @@ # Tasks (*crm.tasks*) +## Overview + ### Available Operations * [list](#list) - List Tasks @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.crm.tasks.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListCrmTaskResponse](../../models/listcrmtaskresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.crm.tasks.create(x_connection_token="", unified_crm_task_input={ "subject": "Answer customers", "content": "Prepare email campaign", @@ -78,8 +77,8 @@ res = s.crm.tasks.create(x_connection_token="", unified_crm_task_input={ "company_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "deal_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }) @@ -98,15 +97,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedCrmTaskOutput](../../models/unifiedcrmtaskoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -121,7 +120,6 @@ s = Panora( api_key="", ) - res = s.crm.tasks.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -139,12 +137,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Crm software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedCrmTaskOutput](../../models/unifiedcrmtaskoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/taxrates/README.md b/docs/sdks/taxrates/README.md index a834715..1c7516b 100644 --- a/docs/sdks/taxrates/README.md +++ b/docs/sdks/taxrates/README.md @@ -1,6 +1,8 @@ # Taxrates (*accounting.taxrates*) +## Overview + ### Available Operations * [list](#list) - List TaxRates @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.taxrates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingTaxRateResponse](../../models/listaccountingtaxrateresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.taxrates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingTaxrateOutput](../../models/unifiedaccountingtaxrateoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/teams/README.md b/docs/sdks/teams/README.md index b0b5f06..995a009 100644 --- a/docs/sdks/teams/README.md +++ b/docs/sdks/teams/README.md @@ -1,6 +1,8 @@ # Teams (*ticketing.teams*) +## Overview + ### Available Operations * [list](#list) - List Teams @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ticketing.teams.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingTeamsResponse](../../models/listticketingteamsresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.ticketing.teams.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedTicketingTeamOutput](../../models/unifiedticketingteamoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/templates/README.md b/docs/sdks/templates/README.md index 3a6366b..bc1b3b9 100644 --- a/docs/sdks/templates/README.md +++ b/docs/sdks/templates/README.md @@ -1,6 +1,8 @@ # Templates (*marketingautomation.templates*) +## Overview + ### Available Operations * [list](#list) - List Templates @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.marketingautomation.templates.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListMarketingautomationTemplatesResponse](../../models/listmarketingautomationtemplatesresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -67,7 +67,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.templates.create(x_connection_token="", unified_marketingautomation_template_input={}) if res is not None: @@ -85,15 +84,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.UnifiedMarketingautomationTemplateOutput](../../models/unifiedmarketingautomationtemplateoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -108,7 +107,6 @@ s = Panora( api_key="", ) - res = s.marketingautomation.templates.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -126,12 +124,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Marketingautomation software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedMarketingautomationTemplateOutput](../../models/unifiedmarketingautomationtemplateoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/ticketing/README.md b/docs/sdks/ticketing/README.md index 3d162c2..37b7103 100644 --- a/docs/sdks/ticketing/README.md +++ b/docs/sdks/ticketing/README.md @@ -1,5 +1,2 @@ # Ticketing -(*ticketing*) - -### Available Operations - +(*ticketing*) \ No newline at end of file diff --git a/docs/sdks/tickets/README.md b/docs/sdks/tickets/README.md index 67555d3..cbbfbca 100644 --- a/docs/sdks/tickets/README.md +++ b/docs/sdks/tickets/README.md @@ -1,6 +1,8 @@ # Tickets (*ticketing.tickets*) +## Overview + ### Available Operations * [list](#list) - List Tickets @@ -20,18 +22,16 @@ s = Panora( api_key="", ) - res = s.ticketing.tickets.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -44,15 +44,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingTicketResponse](../../models/listticketingticketresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -68,7 +68,6 @@ s = Panora( api_key="", ) - res = s.ticketing.tickets.create(x_connection_token="", unified_ticketing_ticket_input={ "name": "Customer Service Inquiry", "description": "Help customer", @@ -106,8 +105,8 @@ res = s.ticketing.tickets.create(x_connection_token="", unified_ticketing "801f9ede-c698-4e66-a7fc-48d19eebaa4f", ], "field_mappings": { - "fav_dish": "broccoli", "fav_color": "red", + "fav_dish": "broccoli", }, }, remote_data=False) @@ -126,15 +125,15 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedTicketingTicketOutput](../../models/unifiedticketingticketoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -149,7 +148,6 @@ s = Panora( api_key="", ) - res = s.ticketing.tickets.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -167,12 +165,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedTicketingTicketOutput](../../models/unifiedticketingticketoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/timeoffbalances/README.md b/docs/sdks/timeoffbalances/README.md deleted file mode 100644 index 0bbb776..0000000 --- a/docs/sdks/timeoffbalances/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# Timeoffbalances -(*hris.timeoffbalances*) - -### Available Operations - -* [list](#list) - List TimeoffBalances -* [retrieve](#retrieve) - Retrieve Time off Balances - -## list - -List TimeoffBalances - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timeoffbalances.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisTimeoffbalancesResponse](../../models/listhristimeoffbalancesresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve Time off Balances from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timeoffbalances.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the timeoffbalance you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisTimeoffbalanceOutput](../../models/unifiedhristimeoffbalanceoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/timeoffs/README.md b/docs/sdks/timeoffs/README.md deleted file mode 100644 index 37a79cf..0000000 --- a/docs/sdks/timeoffs/README.md +++ /dev/null @@ -1,149 +0,0 @@ -# Timeoffs -(*hris.timeoffs*) - -### Available Operations - -* [list](#list) - List Time Offs -* [create](#create) - Create Timeoffs -* [retrieve](#retrieve) - Retrieve Time Off - -## list - -List Time Offs - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timeoffs.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisTimeoffsResponse](../../models/listhristimeoffsresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Timeoffs in any supported Hris software - -### Example Usage - -```python -import dateutil.parser -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timeoffs.create(x_connection_token="", unified_hris_timeoff_input={ - "employee": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "approver": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "status": "REQUESTED", - "employee_note": "Annual vacation", - "units": "DAYS", - "amount": 5, - "request_type": "VACATION", - "start_time": dateutil.parser.isoparse("2024-07-01T09:00:00Z"), - "end_time": dateutil.parser.isoparse("2024-07-05T17:00:00Z"), - "field_mappings": {}, -}) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `unified_hris_timeoff_input` | [models.UnifiedHrisTimeoffInput](../../models/unifiedhristimeoffinput.md) | :heavy_check_mark: | N/A | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - - -### Response - -**[models.UnifiedHrisTimeoffOutput](../../models/unifiedhristimeoffoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve a Time Off from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timeoffs.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the time off you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisTimeoffOutput](../../models/unifiedhristimeoffoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/timesheetentries/README.md b/docs/sdks/timesheetentries/README.md deleted file mode 100644 index 082bf50..0000000 --- a/docs/sdks/timesheetentries/README.md +++ /dev/null @@ -1,145 +0,0 @@ -# Timesheetentries -(*hris.timesheetentries*) - -### Available Operations - -* [list](#list) - List Timesheetentries -* [create](#create) - Create Timesheetentrys -* [retrieve](#retrieve) - Retrieve Timesheetentry - -## list - -List Timesheetentries - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timesheetentries.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") - -if res is not None: - while True: - # handle items - - res = res.Next() - if res is None: - break - - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original software. | true | -| `limit` | *Optional[float]* | :heavy_minus_sign: | Set to get the number of records. | 10 | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.ListHrisTimesheetentriesResponse](../../models/listhristimesheetentriesresponse.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## create - -Create Timesheetentrys in any supported Hris software - -### Example Usage - -```python -import dateutil.parser -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timesheetentries.create(x_connection_token="", unified_hris_timesheet_entry_input={ - "hours_worked": 40, - "start_time": dateutil.parser.isoparse("2024-10-01T08:00:00Z"), - "end_time": dateutil.parser.isoparse("2024-10-01T16:00:00Z"), - "employee_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f", - "remote_was_deleted": False, - "field_mappings": {}, -}) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | -| `unified_hris_timesheet_entry_input` | [models.UnifiedHrisTimesheetEntryInput](../../models/unifiedhristimesheetentryinput.md) | :heavy_check_mark: | N/A | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - - -### Response - -**[models.UnifiedHrisTimesheetEntryOutput](../../models/unifiedhristimesheetentryoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | - -## retrieve - -Retrieve an Timesheetentry from any connected Hris software - -### Example Usage - -```python -from panora_sdk import Panora - -s = Panora( - api_key="", -) - - -res = s.hris.timesheetentries.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) - -if res is not None: - # handle response - pass - -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `x_connection_token` | *str* | :heavy_check_mark: | The connection token | | -| `id` | *str* | :heavy_check_mark: | id of the timesheetentry you want to retrieve. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | -| `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Hris software. | false | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - - -### Response - -**[models.UnifiedHrisTimesheetEntryOutput](../../models/unifiedhristimesheetentryoutput.md)** -### Errors - -| Error Object | Status Code | Content Type | -| --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | diff --git a/docs/sdks/trackingcategories/README.md b/docs/sdks/trackingcategories/README.md index b018b2d..0f1b78e 100644 --- a/docs/sdks/trackingcategories/README.md +++ b/docs/sdks/trackingcategories/README.md @@ -1,6 +1,8 @@ # Trackingcategories (*accounting.trackingcategories*) +## Overview + ### Available Operations * [list](#list) - List TrackingCategorys @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.trackingcategories.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingTrackingCategorysResponse](../../models/listaccountingtrackingcategorysresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.trackingcategories.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingTrackingcategoryOutput](../../models/unifiedaccountingtrackingcategoryoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/transactions/README.md b/docs/sdks/transactions/README.md index c6f061d..48c95b2 100644 --- a/docs/sdks/transactions/README.md +++ b/docs/sdks/transactions/README.md @@ -1,6 +1,8 @@ # Transactions (*accounting.transactions*) +## Overview + ### Available Operations * [list](#list) - List Transactions @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.transactions.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingTransactionResponse](../../models/listaccountingtransactionresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.transactions.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingTransactionOutput](../../models/unifiedaccountingtransactionoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/users/README.md b/docs/sdks/users/README.md index d8ed1a4..f4dc4dd 100644 --- a/docs/sdks/users/README.md +++ b/docs/sdks/users/README.md @@ -1,6 +1,8 @@ # Users (*ticketing.users*) +## Overview + ### Available Operations * [list](#list) - List Users @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.ticketing.users.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListTicketingUsersResponse](../../models/listticketingusersresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.ticketing.users.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Ticketing software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedTicketingUserOutput](../../models/unifiedticketinguseroutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/vendorcredits/README.md b/docs/sdks/vendorcredits/README.md index 49256b7..2e6f79b 100644 --- a/docs/sdks/vendorcredits/README.md +++ b/docs/sdks/vendorcredits/README.md @@ -1,6 +1,8 @@ # Vendorcredits (*accounting.vendorcredits*) +## Overview + ### Available Operations * [list](#list) - List VendorCredits @@ -19,18 +21,16 @@ s = Panora( api_key="", ) - res = s.accounting.vendorcredits.list(x_connection_token="", remote_data=True, limit=10, cursor="1b8b05bb-5273-4012-b520-8657b0b90874") if res is not None: while True: # handle items - res = res.Next() + res = res.next() if res is None: break - ``` ### Parameters @@ -43,15 +43,15 @@ if res is not None: | `cursor` | *Optional[str]* | :heavy_minus_sign: | Set to get the number of records after this cursor. | 1b8b05bb-5273-4012-b520-8657b0b90874 | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.ListAccountingVendorCreditResponse](../../models/listaccountingvendorcreditresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## retrieve @@ -66,7 +66,6 @@ s = Panora( api_key="", ) - res = s.accounting.vendorcredits.retrieve(x_connection_token="", id="801f9ede-c698-4e66-a7fc-48d19eebaa4f", remote_data=False) if res is not None: @@ -84,12 +83,12 @@ if res is not None: | `remote_data` | *Optional[bool]* | :heavy_minus_sign: | Set to true to include data from the original Accounting software. | false | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.UnifiedAccountingVendorcreditOutput](../../models/unifiedaccountingvendorcreditoutput.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/webhooks/README.md b/docs/sdks/webhooks/README.md index bb3b985..f7cb42e 100644 --- a/docs/sdks/webhooks/README.md +++ b/docs/sdks/webhooks/README.md @@ -1,6 +1,8 @@ # Webhooks (*webhooks*) +## Overview + ### Available Operations * [list](#list) - List webhooks @@ -22,7 +24,6 @@ s = Panora( api_key="", ) - res = s.webhooks.list() if res is not None: @@ -37,15 +38,15 @@ if res is not None: | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[List[models.WebhookResponse]](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## create @@ -60,13 +61,12 @@ s = Panora( api_key="", ) - res = s.webhooks.create(request={ "url": "https://acme.com/webhook_receiver", + "description": "Webhook to receive connection events", "scope": [ "connection.created", ], - "description": "Webhook to receive connection events", }) if res is not None: @@ -82,15 +82,15 @@ if res is not None: | `request` | [models.WebhookDto](../../models/webhookdto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[models.WebhookResponse](../../models/webhookresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## delete @@ -105,7 +105,6 @@ s = Panora( api_key="", ) - res = s.webhooks.delete(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") if res is not None: @@ -121,15 +120,15 @@ if res is not None: | `id` | *str* | :heavy_check_mark: | id of the webhook to delete. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.WebhookResponse](../../models/webhookresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## update_status @@ -144,7 +143,6 @@ s = Panora( api_key="", ) - res = s.webhooks.update_status(id="801f9ede-c698-4e66-a7fc-48d19eebaa4f") if res is not None: @@ -160,15 +158,15 @@ if res is not None: | `id` | *str* | :heavy_check_mark: | id of the webhook to update. | 801f9ede-c698-4e66-a7fc-48d19eebaa4f | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | - ### Response **[models.WebhookResponse](../../models/webhookresponse.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | ## verify_event @@ -183,10 +181,9 @@ s = Panora( api_key="", ) - res = s.webhooks.verify_event(request={ "payload": { - "key": "", + }, "signature": "", "secret": "", @@ -205,12 +202,12 @@ if res is not None: | `request` | [models.SignatureVerificationDto](../../models/signatureverificationdto.md) | :heavy_check_mark: | The request object to use for the request. | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | - ### Response **[Dict[str, Any]](../../models/.md)** + ### Errors -| Error Object | Status Code | Content Type | +| Error Type | Status Code | Content Type | | --------------- | --------------- | --------------- | -| models.SDKError | 4xx-5xx | */* | +| models.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/poetry.lock b/poetry.lock index ca764e1..fbb81f3 100644 --- a/poetry.lock +++ b/poetry.lock @@ -87,6 +87,20 @@ files = [ graph = ["objgraph (>=1.7.2)"] profile = ["gprof2dot (>=2022.7.29)"] +[[package]] +name = "eval-type-backport" +version = "0.2.0" +description = "Like `typing._eval_type`, but lets older Python versions use newer typing features." +optional = false +python-versions = ">=3.8" +files = [ + {file = "eval_type_backport-0.2.0-py3-none-any.whl", hash = "sha256:ac2f73d30d40c5a30a80b8739a789d6bb5e49fdffa66d7912667e2015d9c9933"}, + {file = "eval_type_backport-0.2.0.tar.gz", hash = "sha256:68796cfbc7371ebf923f03bdf7bef415f3ec098aeced24e054b253a0e78f7b37"}, +] + +[package.extras] +tests = ["pytest"] + [[package]] name = "exceptiongroup" version = "1.2.2" @@ -262,17 +276,6 @@ files = [ {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, ] -[[package]] -name = "nodeenv" -version = "1.9.1" -description = "Node.js virtual environment builder" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" -files = [ - {file = "nodeenv-1.9.1-py2.py3-none-any.whl", hash = "sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9"}, - {file = "nodeenv-1.9.1.tar.gz", hash = "sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f"}, -] - [[package]] name = "platformdirs" version = "4.2.2" @@ -291,18 +294,18 @@ type = ["mypy (>=1.8)"] [[package]] name = "pydantic" -version = "2.8.2" +version = "2.9.2" description = "Data validation using Python type hints" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic-2.8.2-py3-none-any.whl", hash = "sha256:73ee9fddd406dc318b885c7a2eab8a6472b68b8fb5ba8150949fc3db939f23c8"}, - {file = "pydantic-2.8.2.tar.gz", hash = "sha256:6f62c13d067b0755ad1c21a34bdd06c0c12625a22b0fc09c6b149816604f7c2a"}, + {file = "pydantic-2.9.2-py3-none-any.whl", hash = "sha256:f048cec7b26778210e28a0459867920654d48e5e62db0958433636cde4254f12"}, + {file = "pydantic-2.9.2.tar.gz", hash = "sha256:d155cef71265d1e9807ed1c32b4c8deec042a44a50a4188b25ac67ecd81a9c0f"}, ] [package.dependencies] -annotated-types = ">=0.4.0" -pydantic-core = "2.20.1" +annotated-types = ">=0.6.0" +pydantic-core = "2.23.4" typing-extensions = [ {version = ">=4.12.2", markers = "python_version >= \"3.13\""}, {version = ">=4.6.1", markers = "python_version < \"3.13\""}, @@ -310,103 +313,104 @@ typing-extensions = [ [package.extras] email = ["email-validator (>=2.0.0)"] +timezone = ["tzdata"] [[package]] name = "pydantic-core" -version = "2.20.1" +version = "2.23.4" description = "Core functionality for Pydantic validation and serialization" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic_core-2.20.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:3acae97ffd19bf091c72df4d726d552c473f3576409b2a7ca36b2f535ffff4a3"}, - {file = "pydantic_core-2.20.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:41f4c96227a67a013e7de5ff8f20fb496ce573893b7f4f2707d065907bffdbd6"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f239eb799a2081495ea659d8d4a43a8f42cd1fe9ff2e7e436295c38a10c286a"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:53e431da3fc53360db73eedf6f7124d1076e1b4ee4276b36fb25514544ceb4a3"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f1f62b2413c3a0e846c3b838b2ecd6c7a19ec6793b2a522745b0869e37ab5bc1"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d41e6daee2813ecceea8eda38062d69e280b39df793f5a942fa515b8ed67953"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d482efec8b7dc6bfaedc0f166b2ce349df0011f5d2f1f25537ced4cfc34fd98"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e93e1a4b4b33daed65d781a57a522ff153dcf748dee70b40c7258c5861e1768a"}, - {file = "pydantic_core-2.20.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7c4ea22b6739b162c9ecaaa41d718dfad48a244909fe7ef4b54c0b530effc5a"}, - {file = "pydantic_core-2.20.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4f2790949cf385d985a31984907fecb3896999329103df4e4983a4a41e13e840"}, - {file = "pydantic_core-2.20.1-cp310-none-win32.whl", hash = "sha256:5e999ba8dd90e93d57410c5e67ebb67ffcaadcea0ad973240fdfd3a135506250"}, - {file = "pydantic_core-2.20.1-cp310-none-win_amd64.whl", hash = "sha256:512ecfbefef6dac7bc5eaaf46177b2de58cdf7acac8793fe033b24ece0b9566c"}, - {file = "pydantic_core-2.20.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d2a8fa9d6d6f891f3deec72f5cc668e6f66b188ab14bb1ab52422fe8e644f312"}, - {file = "pydantic_core-2.20.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:175873691124f3d0da55aeea1d90660a6ea7a3cfea137c38afa0a5ffabe37b88"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:37eee5b638f0e0dcd18d21f59b679686bbd18917b87db0193ae36f9c23c355fc"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25e9185e2d06c16ee438ed39bf62935ec436474a6ac4f9358524220f1b236e43"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:150906b40ff188a3260cbee25380e7494ee85048584998c1e66df0c7a11c17a6"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ad4aeb3e9a97286573c03df758fc7627aecdd02f1da04516a86dc159bf70121"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3f3ed29cd9f978c604708511a1f9c2fdcb6c38b9aae36a51905b8811ee5cbf1"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b0dae11d8f5ded51699c74d9548dcc5938e0804cc8298ec0aa0da95c21fff57b"}, - {file = "pydantic_core-2.20.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:faa6b09ee09433b87992fb5a2859efd1c264ddc37280d2dd5db502126d0e7f27"}, - {file = "pydantic_core-2.20.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9dc1b507c12eb0481d071f3c1808f0529ad41dc415d0ca11f7ebfc666e66a18b"}, - {file = "pydantic_core-2.20.1-cp311-none-win32.whl", hash = "sha256:fa2fddcb7107e0d1808086ca306dcade7df60a13a6c347a7acf1ec139aa6789a"}, - {file = "pydantic_core-2.20.1-cp311-none-win_amd64.whl", hash = "sha256:40a783fb7ee353c50bd3853e626f15677ea527ae556429453685ae32280c19c2"}, - {file = "pydantic_core-2.20.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:595ba5be69b35777474fa07f80fc260ea71255656191adb22a8c53aba4479231"}, - {file = "pydantic_core-2.20.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a4f55095ad087474999ee28d3398bae183a66be4823f753cd7d67dd0153427c9"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9aa05d09ecf4c75157197f27cdc9cfaeb7c5f15021c6373932bf3e124af029f"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e97fdf088d4b31ff4ba35db26d9cc472ac7ef4a2ff2badeabf8d727b3377fc52"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bc633a9fe1eb87e250b5c57d389cf28998e4292336926b0b6cdaee353f89a237"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d573faf8eb7e6b1cbbcb4f5b247c60ca8be39fe2c674495df0eb4318303137fe"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26dc97754b57d2fd00ac2b24dfa341abffc380b823211994c4efac7f13b9e90e"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:33499e85e739a4b60c9dac710c20a08dc73cb3240c9a0e22325e671b27b70d24"}, - {file = "pydantic_core-2.20.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:bebb4d6715c814597f85297c332297c6ce81e29436125ca59d1159b07f423eb1"}, - {file = "pydantic_core-2.20.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:516d9227919612425c8ef1c9b869bbbee249bc91912c8aaffb66116c0b447ebd"}, - {file = "pydantic_core-2.20.1-cp312-none-win32.whl", hash = "sha256:469f29f9093c9d834432034d33f5fe45699e664f12a13bf38c04967ce233d688"}, - {file = "pydantic_core-2.20.1-cp312-none-win_amd64.whl", hash = "sha256:035ede2e16da7281041f0e626459bcae33ed998cca6a0a007a5ebb73414ac72d"}, - {file = "pydantic_core-2.20.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:0827505a5c87e8aa285dc31e9ec7f4a17c81a813d45f70b1d9164e03a813a686"}, - {file = "pydantic_core-2.20.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:19c0fa39fa154e7e0b7f82f88ef85faa2a4c23cc65aae2f5aea625e3c13c735a"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa223cd1e36b642092c326d694d8bf59b71ddddc94cdb752bbbb1c5c91d833b"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c336a6d235522a62fef872c6295a42ecb0c4e1d0f1a3e500fe949415761b8a19"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7eb6a0587eded33aeefea9f916899d42b1799b7b14b8f8ff2753c0ac1741edac"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:70c8daf4faca8da5a6d655f9af86faf6ec2e1768f4b8b9d0226c02f3d6209703"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9fa4c9bf273ca41f940bceb86922a7667cd5bf90e95dbb157cbb8441008482c"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:11b71d67b4725e7e2a9f6e9c0ac1239bbc0c48cce3dc59f98635efc57d6dac83"}, - {file = "pydantic_core-2.20.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:270755f15174fb983890c49881e93f8f1b80f0b5e3a3cc1394a255706cabd203"}, - {file = "pydantic_core-2.20.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:c81131869240e3e568916ef4c307f8b99583efaa60a8112ef27a366eefba8ef0"}, - {file = "pydantic_core-2.20.1-cp313-none-win32.whl", hash = "sha256:b91ced227c41aa29c672814f50dbb05ec93536abf8f43cd14ec9521ea09afe4e"}, - {file = "pydantic_core-2.20.1-cp313-none-win_amd64.whl", hash = "sha256:65db0f2eefcaad1a3950f498aabb4875c8890438bc80b19362cf633b87a8ab20"}, - {file = "pydantic_core-2.20.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:4745f4ac52cc6686390c40eaa01d48b18997cb130833154801a442323cc78f91"}, - {file = "pydantic_core-2.20.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a8ad4c766d3f33ba8fd692f9aa297c9058970530a32c728a2c4bfd2616d3358b"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41e81317dd6a0127cabce83c0c9c3fbecceae981c8391e6f1dec88a77c8a569a"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:04024d270cf63f586ad41fff13fde4311c4fc13ea74676962c876d9577bcc78f"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eaad4ff2de1c3823fddf82f41121bdf453d922e9a238642b1dedb33c4e4f98ad"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:26ab812fa0c845df815e506be30337e2df27e88399b985d0bb4e3ecfe72df31c"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c5ebac750d9d5f2706654c638c041635c385596caf68f81342011ddfa1e5598"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2aafc5a503855ea5885559eae883978c9b6d8c8993d67766ee73d82e841300dd"}, - {file = "pydantic_core-2.20.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:4868f6bd7c9d98904b748a2653031fc9c2f85b6237009d475b1008bfaeb0a5aa"}, - {file = "pydantic_core-2.20.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:aa2f457b4af386254372dfa78a2eda2563680d982422641a85f271c859df1987"}, - {file = "pydantic_core-2.20.1-cp38-none-win32.whl", hash = "sha256:225b67a1f6d602de0ce7f6c1c3ae89a4aa25d3de9be857999e9124f15dab486a"}, - {file = "pydantic_core-2.20.1-cp38-none-win_amd64.whl", hash = "sha256:6b507132dcfc0dea440cce23ee2182c0ce7aba7054576efc65634f080dbe9434"}, - {file = "pydantic_core-2.20.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:b03f7941783b4c4a26051846dea594628b38f6940a2fdc0df00b221aed39314c"}, - {file = "pydantic_core-2.20.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1eedfeb6089ed3fad42e81a67755846ad4dcc14d73698c120a82e4ccf0f1f9f6"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:635fee4e041ab9c479e31edda27fcf966ea9614fff1317e280d99eb3e5ab6fe2"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:77bf3ac639c1ff567ae3b47f8d4cc3dc20f9966a2a6dd2311dcc055d3d04fb8a"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ed1b0132f24beeec5a78b67d9388656d03e6a7c837394f99257e2d55b461611"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c6514f963b023aeee506678a1cf821fe31159b925c4b76fe2afa94cc70b3222b"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10d4204d8ca33146e761c79f83cc861df20e7ae9f6487ca290a97702daf56006"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2d036c7187b9422ae5b262badb87a20a49eb6c5238b2004e96d4da1231badef1"}, - {file = "pydantic_core-2.20.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9ebfef07dbe1d93efb94b4700f2d278494e9162565a54f124c404a5656d7ff09"}, - {file = "pydantic_core-2.20.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6b9d9bb600328a1ce523ab4f454859e9d439150abb0906c5a1983c146580ebab"}, - {file = "pydantic_core-2.20.1-cp39-none-win32.whl", hash = "sha256:784c1214cb6dd1e3b15dd8b91b9a53852aed16671cc3fbe4786f4f1db07089e2"}, - {file = "pydantic_core-2.20.1-cp39-none-win_amd64.whl", hash = "sha256:d2fe69c5434391727efa54b47a1e7986bb0186e72a41b203df8f5b0a19a4f669"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a45f84b09ac9c3d35dfcf6a27fd0634d30d183205230a0ebe8373a0e8cfa0906"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:d02a72df14dfdbaf228424573a07af10637bd490f0901cee872c4f434a735b94"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d2b27e6af28f07e2f195552b37d7d66b150adbaa39a6d327766ffd695799780f"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:084659fac3c83fd674596612aeff6041a18402f1e1bc19ca39e417d554468482"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:242b8feb3c493ab78be289c034a1f659e8826e2233786e36f2893a950a719bb6"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:38cf1c40a921d05c5edc61a785c0ddb4bed67827069f535d794ce6bcded919fc"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:e0bbdd76ce9aa5d4209d65f2b27fc6e5ef1312ae6c5333c26db3f5ade53a1e99"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:254ec27fdb5b1ee60684f91683be95e5133c994cc54e86a0b0963afa25c8f8a6"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:407653af5617f0757261ae249d3fba09504d7a71ab36ac057c938572d1bc9331"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:c693e916709c2465b02ca0ad7b387c4f8423d1db7b4649c551f27a529181c5ad"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5b5ff4911aea936a47d9376fd3ab17e970cc543d1b68921886e7f64bd28308d1"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:177f55a886d74f1808763976ac4efd29b7ed15c69f4d838bbd74d9d09cf6fa86"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:964faa8a861d2664f0c7ab0c181af0bea66098b1919439815ca8803ef136fc4e"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:4dd484681c15e6b9a977c785a345d3e378d72678fd5f1f3c0509608da24f2ac0"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f6d6cff3538391e8486a431569b77921adfcdef14eb18fbf19b7c0a5294d4e6a"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a6d511cc297ff0883bc3708b465ff82d7560193169a8b93260f74ecb0a5e08a7"}, - {file = "pydantic_core-2.20.1.tar.gz", hash = "sha256:26ca695eeee5f9f1aeeb211ffc12f10bcb6f71e2989988fda61dabd65db878d4"}, + {file = "pydantic_core-2.23.4-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:b10bd51f823d891193d4717448fab065733958bdb6a6b351967bd349d48d5c9b"}, + {file = "pydantic_core-2.23.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4fc714bdbfb534f94034efaa6eadd74e5b93c8fa6315565a222f7b6f42ca1166"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63e46b3169866bd62849936de036f901a9356e36376079b05efa83caeaa02ceb"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed1a53de42fbe34853ba90513cea21673481cd81ed1be739f7f2efb931b24916"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cfdd16ab5e59fc31b5e906d1a3f666571abc367598e3e02c83403acabc092e07"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:255a8ef062cbf6674450e668482456abac99a5583bbafb73f9ad469540a3a232"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a7cd62e831afe623fbb7aabbb4fe583212115b3ef38a9f6b71869ba644624a2"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f09e2ff1f17c2b51f2bc76d1cc33da96298f0a036a137f5440ab3ec5360b624f"}, + {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e38e63e6f3d1cec5a27e0afe90a085af8b6806ee208b33030e65b6516353f1a3"}, + {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0dbd8dbed2085ed23b5c04afa29d8fd2771674223135dc9bc937f3c09284d071"}, + {file = "pydantic_core-2.23.4-cp310-none-win32.whl", hash = "sha256:6531b7ca5f951d663c339002e91aaebda765ec7d61b7d1e3991051906ddde119"}, + {file = "pydantic_core-2.23.4-cp310-none-win_amd64.whl", hash = "sha256:7c9129eb40958b3d4500fa2467e6a83356b3b61bfff1b414c7361d9220f9ae8f"}, + {file = "pydantic_core-2.23.4-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:77733e3892bb0a7fa797826361ce8a9184d25c8dffaec60b7ffe928153680ba8"}, + {file = "pydantic_core-2.23.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b84d168f6c48fabd1f2027a3d1bdfe62f92cade1fb273a5d68e621da0e44e6d"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df49e7a0861a8c36d089c1ed57d308623d60416dab2647a4a17fe050ba85de0e"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ff02b6d461a6de369f07ec15e465a88895f3223eb75073ffea56b84d9331f607"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:996a38a83508c54c78a5f41456b0103c30508fed9abcad0a59b876d7398f25fd"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d97683ddee4723ae8c95d1eddac7c192e8c552da0c73a925a89fa8649bf13eea"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:216f9b2d7713eb98cb83c80b9c794de1f6b7e3145eef40400c62e86cee5f4e1e"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6f783e0ec4803c787bcea93e13e9932edab72068f68ecffdf86a99fd5918878b"}, + {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d0776dea117cf5272382634bd2a5c1b6eb16767c223c6a5317cd3e2a757c61a0"}, + {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d5f7a395a8cf1621939692dba2a6b6a830efa6b3cee787d82c7de1ad2930de64"}, + {file = "pydantic_core-2.23.4-cp311-none-win32.whl", hash = "sha256:74b9127ffea03643e998e0c5ad9bd3811d3dac8c676e47db17b0ee7c3c3bf35f"}, + {file = "pydantic_core-2.23.4-cp311-none-win_amd64.whl", hash = "sha256:98d134c954828488b153d88ba1f34e14259284f256180ce659e8d83e9c05eaa3"}, + {file = "pydantic_core-2.23.4-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f3e0da4ebaef65158d4dfd7d3678aad692f7666877df0002b8a522cdf088f231"}, + {file = "pydantic_core-2.23.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f69a8e0b033b747bb3e36a44e7732f0c99f7edd5cea723d45bc0d6e95377ffee"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:723314c1d51722ab28bfcd5240d858512ffd3116449c557a1336cbe3919beb87"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bb2802e667b7051a1bebbfe93684841cc9351004e2badbd6411bf357ab8d5ac8"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d18ca8148bebe1b0a382a27a8ee60350091a6ddaf475fa05ef50dc35b5df6327"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33e3d65a85a2a4a0dc3b092b938a4062b1a05f3a9abde65ea93b233bca0e03f2"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:128585782e5bfa515c590ccee4b727fb76925dd04a98864182b22e89a4e6ed36"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:68665f4c17edcceecc112dfed5dbe6f92261fb9d6054b47d01bf6371a6196126"}, + {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:20152074317d9bed6b7a95ade3b7d6054845d70584216160860425f4fbd5ee9e"}, + {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:9261d3ce84fa1d38ed649c3638feefeae23d32ba9182963e465d58d62203bd24"}, + {file = "pydantic_core-2.23.4-cp312-none-win32.whl", hash = "sha256:4ba762ed58e8d68657fc1281e9bb72e1c3e79cc5d464be146e260c541ec12d84"}, + {file = "pydantic_core-2.23.4-cp312-none-win_amd64.whl", hash = "sha256:97df63000f4fea395b2824da80e169731088656d1818a11b95f3b173747b6cd9"}, + {file = "pydantic_core-2.23.4-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7530e201d10d7d14abce4fb54cfe5b94a0aefc87da539d0346a484ead376c3cc"}, + {file = "pydantic_core-2.23.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:df933278128ea1cd77772673c73954e53a1c95a4fdf41eef97c2b779271bd0bd"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cb3da3fd1b6a5d0279a01877713dbda118a2a4fc6f0d821a57da2e464793f05"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42c6dcb030aefb668a2b7009c85b27f90e51e6a3b4d5c9bc4c57631292015b0d"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:696dd8d674d6ce621ab9d45b205df149399e4bb9aa34102c970b721554828510"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2971bb5ffe72cc0f555c13e19b23c85b654dd2a8f7ab493c262071377bfce9f6"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8394d940e5d400d04cad4f75c0598665cbb81aecefaca82ca85bd28264af7f9b"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0dff76e0602ca7d4cdaacc1ac4c005e0ce0dcfe095d5b5259163a80d3a10d327"}, + {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:7d32706badfe136888bdea71c0def994644e09fff0bfe47441deaed8e96fdbc6"}, + {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ed541d70698978a20eb63d8c5d72f2cc6d7079d9d90f6b50bad07826f1320f5f"}, + {file = "pydantic_core-2.23.4-cp313-none-win32.whl", hash = "sha256:3d5639516376dce1940ea36edf408c554475369f5da2abd45d44621cb616f769"}, + {file = "pydantic_core-2.23.4-cp313-none-win_amd64.whl", hash = "sha256:5a1504ad17ba4210df3a045132a7baeeba5a200e930f57512ee02909fc5c4cb5"}, + {file = "pydantic_core-2.23.4-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:d4488a93b071c04dc20f5cecc3631fc78b9789dd72483ba15d423b5b3689b555"}, + {file = "pydantic_core-2.23.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:81965a16b675b35e1d09dd14df53f190f9129c0202356ed44ab2728b1c905658"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ffa2ebd4c8530079140dd2d7f794a9d9a73cbb8e9d59ffe24c63436efa8f271"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:61817945f2fe7d166e75fbfb28004034b48e44878177fc54d81688e7b85a3665"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:29d2c342c4bc01b88402d60189f3df065fb0dda3654744d5a165a5288a657368"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5e11661ce0fd30a6790e8bcdf263b9ec5988e95e63cf901972107efc49218b13"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d18368b137c6295db49ce7218b1a9ba15c5bc254c96d7c9f9e924a9bc7825ad"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ec4e55f79b1c4ffb2eecd8a0cfba9955a2588497d96851f4c8f99aa4a1d39b12"}, + {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:374a5e5049eda9e0a44c696c7ade3ff355f06b1fe0bb945ea3cac2bc336478a2"}, + {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5c364564d17da23db1106787675fc7af45f2f7b58b4173bfdd105564e132e6fb"}, + {file = "pydantic_core-2.23.4-cp38-none-win32.whl", hash = "sha256:d7a80d21d613eec45e3d41eb22f8f94ddc758a6c4720842dc74c0581f54993d6"}, + {file = "pydantic_core-2.23.4-cp38-none-win_amd64.whl", hash = "sha256:5f5ff8d839f4566a474a969508fe1c5e59c31c80d9e140566f9a37bba7b8d556"}, + {file = "pydantic_core-2.23.4-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a4fa4fc04dff799089689f4fd502ce7d59de529fc2f40a2c8836886c03e0175a"}, + {file = "pydantic_core-2.23.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0a7df63886be5e270da67e0966cf4afbae86069501d35c8c1b3b6c168f42cb36"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dcedcd19a557e182628afa1d553c3895a9f825b936415d0dbd3cd0bbcfd29b4b"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f54b118ce5de9ac21c363d9b3caa6c800341e8c47a508787e5868c6b79c9323"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86d2f57d3e1379a9525c5ab067b27dbb8a0642fb5d454e17a9ac434f9ce523e3"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:de6d1d1b9e5101508cb37ab0d972357cac5235f5c6533d1071964c47139257df"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1278e0d324f6908e872730c9102b0112477a7f7cf88b308e4fc36ce1bdb6d58c"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9a6b5099eeec78827553827f4c6b8615978bb4b6a88e5d9b93eddf8bb6790f55"}, + {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:e55541f756f9b3ee346b840103f32779c695a19826a4c442b7954550a0972040"}, + {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a5c7ba8ffb6d6f8f2ab08743be203654bb1aaa8c9dcb09f82ddd34eadb695605"}, + {file = "pydantic_core-2.23.4-cp39-none-win32.whl", hash = "sha256:37b0fe330e4a58d3c58b24d91d1eb102aeec675a3db4c292ec3928ecd892a9a6"}, + {file = "pydantic_core-2.23.4-cp39-none-win_amd64.whl", hash = "sha256:1498bec4c05c9c787bde9125cfdcc63a41004ff167f495063191b863399b1a29"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f455ee30a9d61d3e1a15abd5068827773d6e4dc513e795f380cdd59932c782d5"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1e90d2e3bd2c3863d48525d297cd143fe541be8bbf6f579504b9712cb6b643ec"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e203fdf807ac7e12ab59ca2bfcabb38c7cf0b33c41efeb00f8e5da1d86af480"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e08277a400de01bc72436a0ccd02bdf596631411f592ad985dcee21445bd0068"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f220b0eea5965dec25480b6333c788fb72ce5f9129e8759ef876a1d805d00801"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:d06b0c8da4f16d1d1e352134427cb194a0a6e19ad5db9161bf32b2113409e728"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ba1a0996f6c2773bd83e63f18914c1de3c9dd26d55f4ac302a7efe93fb8e7433"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:9a5bce9d23aac8f0cf0836ecfc033896aa8443b501c58d0602dbfd5bd5b37753"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:78ddaaa81421a29574a682b3179d4cf9e6d405a09b99d93ddcf7e5239c742e21"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:883a91b5dd7d26492ff2f04f40fbb652de40fcc0afe07e8129e8ae779c2110eb"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88ad334a15b32a791ea935af224b9de1bf99bcd62fabf745d5f3442199d86d59"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:233710f069d251feb12a56da21e14cca67994eab08362207785cf8c598e74577"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:19442362866a753485ba5e4be408964644dd6a09123d9416c54cd49171f50744"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:624e278a7d29b6445e4e813af92af37820fafb6dcc55c012c834f9e26f9aaaef"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f5ef8f42bec47f21d07668a043f077d507e5bf4e668d5c6dfe6aaba89de1a5b8"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:aea443fffa9fbe3af1a9ba721a87f926fe548d32cab71d188a6ede77d0ff244e"}, + {file = "pydantic_core-2.23.4.tar.gz", hash = "sha256:2584f7cf844ac4d970fba483a717dbe10c1c1c96a969bf65d61ffe94df1b2863"}, ] [package.dependencies] @@ -442,33 +446,15 @@ typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\"" spelling = ["pyenchant (>=3.2,<4.0)"] testutils = ["gitpython (>3)"] -[[package]] -name = "pyright" -version = "1.1.374" -description = "Command line wrapper for pyright" -optional = false -python-versions = ">=3.7" -files = [ - {file = "pyright-1.1.374-py3-none-any.whl", hash = "sha256:55752bcf7a3646d293cd76710a983b71e16f6128aab2d42468e6eb7e46c0a70d"}, - {file = "pyright-1.1.374.tar.gz", hash = "sha256:d01b2daf864ba5e0362e56b844984865970d7204158e61eb685e2dab7804cb82"}, -] - -[package.dependencies] -nodeenv = ">=1.6.0" - -[package.extras] -all = ["twine (>=3.4.1)"] -dev = ["twine (>=3.4.1)"] - [[package]] name = "python-dateutil" -version = "2.9.0.post0" +version = "2.8.2" description = "Extensions to the standard Python datetime module" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ - {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"}, - {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"}, + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, ] [package.dependencies] @@ -558,4 +544,4 @@ typing-extensions = ">=3.7.4" [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "7abd5a04c058be17d66b43322ac00b2ef97558ada53ffb184bd62b0bcb8e5059" +content-hash = "9e57d395164aeb8637702f9d37b29cff9bdc5ebcbd44305b91808c122428bacb" diff --git a/pylintrc b/pylintrc index 224b0d5..5080038 100644 --- a/pylintrc +++ b/pylintrc @@ -440,7 +440,6 @@ disable=raw-checker-failed, broad-exception-raised, too-few-public-methods, too-many-branches, - chained-comparison, duplicate-code, trailing-newlines, too-many-public-methods, @@ -455,7 +454,7 @@ disable=raw-checker-failed, bare-except, broad-exception-caught, fixme, - consider-using-from-import + relative-beyond-top-level # Enable the message, report, category or checker with the given id(s). You can # either give multiple identifier separated by comma (,) or put this option diff --git a/pyproject.toml b/pyproject.toml index 883fa8a..1e8dd2f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,9 +1,9 @@ [tool.poetry] name = "panora-sdk" -version = "0.7.0" +version = "0.8.0" description = "Python Client SDK Generated by Speakeasy." authors = ["Speakeasy",] -readme = "README.md" +readme = "README-PYPI.md" repository = "https://github.com/panoratech/python-sdk.git" packages = [ { include = "panora_sdk", from = "src" } @@ -18,16 +18,16 @@ in-project = true [tool.poetry.dependencies] python = "^3.8" +eval-type-backport = "^0.2.0" httpx = "^0.27.0" jsonpath-python = "^1.0.6" -pydantic = "~2.8.2" -python-dateutil = "^2.9.0.post0" +pydantic = "~2.9.2" +python-dateutil = "2.8.2" typing-inspect = "^0.9.0" [tool.poetry.group.dev.dependencies] mypy = "==1.10.1" pylint = "==3.2.3" -pyright = "==1.1.374" types-python-dateutil = "^2.9.0.20240316" [build-system] diff --git a/scripts/compile.sh b/scripts/compile.sh deleted file mode 100755 index aa49772..0000000 --- a/scripts/compile.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/env bash - -set -o pipefail # Ensure pipeline failures are propagated - -# Use temporary files to store outputs and exit statuses -declare -A output_files -declare -A status_files - -# Function to run a command with temporary output and status files -run_command() { - local cmd="$1" - local key="$2" - local output_file="$3" - local status_file="$4" - - # Run the command and store output and exit status - { - eval "$cmd" - echo $? > "$status_file" - } &> "$output_file" & -} - -# Create temporary files for outputs and statuses -for cmd in compileall pylint mypy pyright; do - output_files[$cmd]=$(mktemp) - status_files[$cmd]=$(mktemp) -done - -# Collect PIDs for background processes -declare -a pids - -# Run commands in parallel using temporary files -echo "Running python -m compileall" -run_command 'poetry run python -m compileall -q . && echo "Success"' 'compileall' "${output_files[compileall]}" "${status_files[compileall]}" -pids+=($!) - -echo "Running pylint" -run_command 'poetry run pylint src' 'pylint' "${output_files[pylint]}" "${status_files[pylint]}" -pids+=($!) - -echo "Running mypy" -run_command 'poetry run mypy src' 'mypy' "${output_files[mypy]}" "${status_files[mypy]}" -pids+=($!) - -echo "Running pyright (optional)" -run_command 'if command -v pyright > /dev/null 2>&1; then pyright src; else echo "pyright not found, skipping"; fi' 'pyright' "${output_files[pyright]}" "${status_files[pyright]}" -pids+=($!) - -# Wait for all processes to complete -echo "Waiting for processes to complete" -for pid in "${pids[@]}"; do - wait "$pid" -done - -# Print output sequentially and check for failures -failed=false -for key in "${!output_files[@]}"; do - echo "--- Output from Command: $key ---" - echo - cat "${output_files[$key]}" - echo # Empty line for separation - echo "--- End of Output from Command: $key ---" - echo - - exit_status=$(cat "${status_files[$key]}") - if [ "$exit_status" -ne 0 ]; then - echo "Command $key failed with exit status $exit_status" >&2 - failed=true - fi -done - -# Clean up temporary files -for tmp_file in "${output_files[@]}" "${status_files[@]}"; do - rm -f "$tmp_file" -done - -if $failed; then - echo "One or more commands failed." >&2 - exit 1 -else - echo "All commands completed successfully." - exit 0 -fi diff --git a/scripts/prepare-readme.py b/scripts/prepare-readme.py new file mode 100644 index 0000000..4849372 --- /dev/null +++ b/scripts/prepare-readme.py @@ -0,0 +1,33 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +import re +import shutil + +try: + with open("README.md", "r") as rh: + readme_contents = rh.read() + GITHUB_URL = "https://github.com/panoratech/python-sdk.git" + GITHUB_URL = ( + GITHUB_URL[: -len(".git")] if GITHUB_URL.endswith(".git") else GITHUB_URL + ) + # links on PyPI should have absolute URLs + readme_contents = re.sub( + r"(\[[^\]]+\]\()((?!https?:)[^\)]+)(\))", + lambda m: m.group(1) + + GITHUB_URL + + "/blob/master/" + + m.group(2) + + m.group(3), + readme_contents, + ) + + with open("README-PYPI.md", "w") as wh: + wh.write(readme_contents) +except Exception as e: + try: + print("Failed to rewrite README.md to README-PYPI.md, copying original instead") + print(e) + shutil.copyfile("README.md", "README-PYPI.md") + except Exception as e: + print("Failed to copy README.md to README-PYPI.md") + print(e) diff --git a/scripts/publish.sh b/scripts/publish.sh index 1ee7194..ab45b1f 100755 --- a/scripts/publish.sh +++ b/scripts/publish.sh @@ -2,4 +2,6 @@ export POETRY_PYPI_TOKEN_PYPI=${PYPI_TOKEN} +poetry run python scripts/prepare-readme.py + poetry publish --build --skip-existing diff --git a/src/panora_sdk/__init__.py b/src/panora_sdk/__init__.py index 68138c4..a1b7f62 100644 --- a/src/panora_sdk/__init__.py +++ b/src/panora_sdk/__init__.py @@ -1,5 +1,9 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" +from ._version import __title__, __version__ from .sdk import * from .sdkconfiguration import * from .models import * + + +VERSION: str = __version__ diff --git a/src/panora_sdk/_hooks/sdkhooks.py b/src/panora_sdk/_hooks/sdkhooks.py index 4a70615..d050cb7 100644 --- a/src/panora_sdk/_hooks/sdkhooks.py +++ b/src/panora_sdk/_hooks/sdkhooks.py @@ -1,10 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" import httpx -from .types import SDKInitHook, BeforeRequestContext, BeforeRequestHook, AfterSuccessContext, AfterSuccessHook, AfterErrorContext, AfterErrorHook, Hooks +from .types import ( + SDKInitHook, + BeforeRequestContext, + BeforeRequestHook, + AfterSuccessContext, + AfterSuccessHook, + AfterErrorContext, + AfterErrorHook, + Hooks, +) from typing import List, Optional, Tuple from panora_sdk.httpclient import HttpClient + class SDKHooks(Hooks): def __init__(self) -> None: self.sdk_init_hooks: List[SDKInitHook] = [] @@ -29,7 +39,9 @@ def sdk_init(self, base_url: str, client: HttpClient) -> Tuple[str, HttpClient]: base_url, client = hook.sdk_init(base_url, client) return base_url, client - def before_request(self, hook_ctx: BeforeRequestContext, request: httpx.Request) -> httpx.Request: + def before_request( + self, hook_ctx: BeforeRequestContext, request: httpx.Request + ) -> httpx.Request: for hook in self.before_request_hooks: out = hook.before_request(hook_ctx, request) if isinstance(out, Exception): @@ -38,7 +50,9 @@ def before_request(self, hook_ctx: BeforeRequestContext, request: httpx.Request) return request - def after_success(self, hook_ctx: AfterSuccessContext, response: httpx.Response) -> httpx.Response: + def after_success( + self, hook_ctx: AfterSuccessContext, response: httpx.Response + ) -> httpx.Response: for hook in self.after_success_hooks: out = hook.after_success(hook_ctx, response) if isinstance(out, Exception): @@ -46,7 +60,12 @@ def after_success(self, hook_ctx: AfterSuccessContext, response: httpx.Response) response = out return response - def after_error(self, hook_ctx: AfterErrorContext, response: Optional[httpx.Response], error: Optional[Exception]) -> Tuple[Optional[httpx.Response], Optional[Exception]]: + def after_error( + self, + hook_ctx: AfterErrorContext, + response: Optional[httpx.Response], + error: Optional[Exception], + ) -> Tuple[Optional[httpx.Response], Optional[Exception]]: for hook in self.after_error_hooks: result = hook.after_error(hook_ctx, response, error) if isinstance(result, Exception): diff --git a/src/panora_sdk/_hooks/types.py b/src/panora_sdk/_hooks/types.py index 6390613..48ed79b 100644 --- a/src/panora_sdk/_hooks/types.py +++ b/src/panora_sdk/_hooks/types.py @@ -1,6 +1,5 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - from abc import ABC, abstractmethod import httpx from panora_sdk.httpclient import HttpClient @@ -12,7 +11,12 @@ class HookContext: oauth2_scopes: Optional[List[str]] = None security_source: Optional[Union[Any, Callable[[], Any]]] = None - def __init__(self, operation_id: str, oauth2_scopes: Optional[List[str]], security_source: Optional[Union[Any, Callable[[], Any]]]): + def __init__( + self, + operation_id: str, + oauth2_scopes: Optional[List[str]], + security_source: Optional[Union[Any, Callable[[], Any]]], + ): self.operation_id = operation_id self.oauth2_scopes = oauth2_scopes self.security_source = security_source @@ -20,18 +24,23 @@ def __init__(self, operation_id: str, oauth2_scopes: Optional[List[str]], securi class BeforeRequestContext(HookContext): def __init__(self, hook_ctx: HookContext): - super().__init__(hook_ctx.operation_id, hook_ctx.oauth2_scopes, hook_ctx.security_source) + super().__init__( + hook_ctx.operation_id, hook_ctx.oauth2_scopes, hook_ctx.security_source + ) class AfterSuccessContext(HookContext): def __init__(self, hook_ctx: HookContext): - super().__init__(hook_ctx.operation_id, hook_ctx.oauth2_scopes, hook_ctx.security_source) - + super().__init__( + hook_ctx.operation_id, hook_ctx.oauth2_scopes, hook_ctx.security_source + ) class AfterErrorContext(HookContext): def __init__(self, hook_ctx: HookContext): - super().__init__(hook_ctx.operation_id, hook_ctx.oauth2_scopes, hook_ctx.security_source) + super().__init__( + hook_ctx.operation_id, hook_ctx.oauth2_scopes, hook_ctx.security_source + ) class SDKInitHook(ABC): @@ -42,19 +51,28 @@ def sdk_init(self, base_url: str, client: HttpClient) -> Tuple[str, HttpClient]: class BeforeRequestHook(ABC): @abstractmethod - def before_request(self, hook_ctx: BeforeRequestContext, request: httpx.Request) -> Union[httpx.Request, Exception]: + def before_request( + self, hook_ctx: BeforeRequestContext, request: httpx.Request + ) -> Union[httpx.Request, Exception]: pass class AfterSuccessHook(ABC): @abstractmethod - def after_success(self, hook_ctx: AfterSuccessContext, response: httpx.Response) -> Union[httpx.Response, Exception]: + def after_success( + self, hook_ctx: AfterSuccessContext, response: httpx.Response + ) -> Union[httpx.Response, Exception]: pass class AfterErrorHook(ABC): @abstractmethod - def after_error(self, hook_ctx: AfterErrorContext, response: Optional[httpx.Response], error: Optional[Exception]) -> Union[Tuple[Optional[httpx.Response], Optional[Exception]], Exception]: + def after_error( + self, + hook_ctx: AfterErrorContext, + response: Optional[httpx.Response], + error: Optional[Exception], + ) -> Union[Tuple[Optional[httpx.Response], Optional[Exception]], Exception]: pass diff --git a/src/panora_sdk/_version.py b/src/panora_sdk/_version.py new file mode 100644 index 0000000..ed368a2 --- /dev/null +++ b/src/panora_sdk/_version.py @@ -0,0 +1,12 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +import importlib.metadata + +__title__: str = "panora-sdk" +__version__: str = "0.8.0" + +try: + if __package__ is not None: + __version__ = importlib.metadata.version(__package__) +except importlib.metadata.PackageNotFoundError: + pass diff --git a/src/panora_sdk/accounting.py b/src/panora_sdk/accounting.py index 7dd1fad..a791caa 100644 --- a/src/panora_sdk/accounting.py +++ b/src/panora_sdk/accounting.py @@ -3,6 +3,7 @@ from .basesdk import BaseSDK from .sdkconfiguration import SDKConfiguration from panora_sdk.addresses import Addresses +from panora_sdk.attachments import Attachments from panora_sdk.balancesheets import Balancesheets from panora_sdk.cashflowstatements import Cashflowstatements from panora_sdk.companyinfos import Companyinfos @@ -14,7 +15,6 @@ from panora_sdk.journalentries import Journalentries from panora_sdk.panora_accounting_contacts import PanoraAccountingContacts from panora_sdk.panora_accounts import PanoraAccounts -from panora_sdk.panora_attachments import PanoraAttachments from panora_sdk.payments import Payments from panora_sdk.phonenumbers import Phonenumbers from panora_sdk.purchaseorders import Purchaseorders @@ -23,10 +23,11 @@ from panora_sdk.transactions import Transactions from panora_sdk.vendorcredits import Vendorcredits + class Accounting(BaseSDK): accounts: PanoraAccounts addresses: Addresses - attachments: PanoraAttachments + attachments: Attachments balancesheets: Balancesheets cashflowstatements: Cashflowstatements companyinfos: Companyinfos @@ -44,15 +45,16 @@ class Accounting(BaseSDK): trackingcategories: Trackingcategories transactions: Transactions vendorcredits: Vendorcredits + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.accounts = PanoraAccounts(self.sdk_configuration) self.addresses = Addresses(self.sdk_configuration) - self.attachments = PanoraAttachments(self.sdk_configuration) + self.attachments = Attachments(self.sdk_configuration) self.balancesheets = Balancesheets(self.sdk_configuration) self.cashflowstatements = Cashflowstatements(self.sdk_configuration) self.companyinfos = Companyinfos(self.sdk_configuration) @@ -70,4 +72,3 @@ def _init_sdks(self): self.trackingcategories = Trackingcategories(self.sdk_configuration) self.transactions = Transactions(self.sdk_configuration) self.vendorcredits = Vendorcredits(self.sdk_configuration) - diff --git a/src/panora_sdk/accounts.py b/src/panora_sdk/accounts.py index dffed0d..bbc14b6 100644 --- a/src/panora_sdk/accounts.py +++ b/src/panora_sdk/accounts.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Accounts(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingAccountResponse: + ) -> Optional[models.ListTicketingAccountResponse]: r"""List Accounts :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingAccountRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/accounts", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingAccountResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingAccountResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingAccountResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingAccountResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingAccountResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingAccountResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingAccountResponse: + ) -> Optional[models.ListTicketingAccountResponse]: r"""List Accounts :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingAccountRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/accounts", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingAccountResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListTicketingAccountResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingAccountResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingAccountResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingAccountResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingAccountResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingAccountRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/accounts/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingAccountOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingAccountOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingAccountRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/accounts/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingAccountOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingAccountOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/actions.py b/src/panora_sdk/actions.py index 2b2e837..5fdb880 100644 --- a/src/panora_sdk/actions.py +++ b/src/panora_sdk/actions.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Actions(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationActionResponse: + ) -> Optional[models.ListMarketingautomationActionResponse]: r"""List Actions :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationActionRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/actions", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingautomationAction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationAction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationActionResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingautomationActionResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationActionResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationActionResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationActionResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationActionResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationActionResponse: + ) -> Optional[models.ListMarketingautomationActionResponse]: r"""List Actions :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationActionRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/actions", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingautomationAction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationAction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationActionResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListMarketingautomationActionResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationActionResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationActionResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationActionResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationActionResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_action_input: Union[models.UnifiedMarketingautomationActionInput, models.UnifiedMarketingautomationActionInputTypedDict], + unified_marketingautomation_action_input: Union[ + models.UnifiedMarketingautomationActionInput, + models.UnifiedMarketingautomationActionInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create a action in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_action_input: + :param unified_marketingautomation_action_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationActionRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_action_input=utils.get_pydantic_model(unified_marketingautomation_action_input, models.UnifiedMarketingautomationActionInput), + unified_marketingautomation_action_input=utils.get_pydantic_model( + unified_marketingautomation_action_input, + models.UnifiedMarketingautomationActionInput, + ), ) - + req = self.build_request( method="POST", path="/marketingautomation/actions", @@ -251,45 +280,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_action_input, False, False, "json", models.UnifiedMarketingautomationActionInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_action_input, + False, + False, + "json", + models.UnifiedMarketingautomationActionInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createMarketingautomationAction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationAction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationActionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationActionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_action_input: Union[models.UnifiedMarketingautomationActionInput, models.UnifiedMarketingautomationActionInputTypedDict], + unified_marketingautomation_action_input: Union[ + models.UnifiedMarketingautomationActionInput, + models.UnifiedMarketingautomationActionInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +346,7 @@ async def create_async( Create a action in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_action_input: + :param unified_marketingautomation_action_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +356,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationActionRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_action_input=utils.get_pydantic_model(unified_marketingautomation_action_input, models.UnifiedMarketingautomationActionInput), + unified_marketingautomation_action_input=utils.get_pydantic_model( + unified_marketingautomation_action_input, + models.UnifiedMarketingautomationActionInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/marketingautomation/actions", base_url=base_url, @@ -332,43 +381,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_action_input, False, False, "json", models.UnifiedMarketingautomationActionInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_action_input, + False, + False, + "json", + models.UnifiedMarketingautomationActionInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createMarketingautomationAction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationAction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationActionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationActionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +454,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationActionRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/actions/{id}", @@ -415,40 +478,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationAction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationAction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationActionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationActionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +542,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationActionRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/actions/{id}", base_url=base_url, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationAction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationAction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationActionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationActionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/activities.py b/src/panora_sdk/activities.py deleted file mode 100644 index 0866226..0000000 --- a/src/panora_sdk/activities.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class Activities(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsActivityResponse: - r"""List Activities - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsActivityRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/activities", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsActivity", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsActivityResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsActivityResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsActivityResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsActivityResponse: - r"""List Activities - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsActivityRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/activities", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsActivity", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsActivityResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsActivityResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsActivityResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_ats_activity_input: Union[models.UnifiedAtsActivityInput, models.UnifiedAtsActivityInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsActivityOutput]: - r"""Create Activities - - Create Activities in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_activity_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsActivityRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_activity_input=utils.get_pydantic_model(unified_ats_activity_input, models.UnifiedAtsActivityInput), - ) - - req = self.build_request( - method="POST", - path="/ats/activities", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_activity_input, False, False, "json", models.UnifiedAtsActivityInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAtsActivity", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsActivityOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_ats_activity_input: Union[models.UnifiedAtsActivityInput, models.UnifiedAtsActivityInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsActivityOutput]: - r"""Create Activities - - Create Activities in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_activity_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsActivityRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_activity_input=utils.get_pydantic_model(unified_ats_activity_input, models.UnifiedAtsActivityInput), - ) - - req = self.build_request( - method="POST", - path="/ats/activities", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_activity_input, False, False, "json", models.UnifiedAtsActivityInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAtsActivity", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsActivityOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsActivityOutput]: - r"""Retrieve Activities - - Retrieve Activities from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the activity you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsActivityRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/activities/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsActivity", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsActivityOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsActivityOutput]: - r"""Retrieve Activities - - Retrieve Activities from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the activity you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsActivityRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/activities/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsActivity", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsActivityOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/addresses.py b/src/panora_sdk/addresses.py index 4012a04..8adc479 100644 --- a/src/panora_sdk/addresses.py +++ b/src/panora_sdk/addresses.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Addresses(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingAddressResponse: + ) -> Optional[models.ListAccountingAddressResponse]: r"""List Addresss :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingAddressRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/addresses", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingAddress", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingAddress", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingAddressResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingAddressResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingAddressResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingAddressResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingAddressResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingAddressResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingAddressResponse: + ) -> Optional[models.ListAccountingAddressResponse]: r"""List Addresss :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingAddressRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/addresses", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingAddress", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingAddress", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingAddressResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListAccountingAddressResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingAddressResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingAddressResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingAddressResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingAddressResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingAddressRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/addresses/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingAddress", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingAddress", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAddressOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAddressOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingAddressRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/addresses/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingAddress", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingAddress", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAddressOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAddressOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/applications.py b/src/panora_sdk/applications.py deleted file mode 100644 index d9303c1..0000000 --- a/src/panora_sdk/applications.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class Applications(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsApplicationResponse: - r"""List Applications - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsApplicationRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/applications", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsApplication", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsApplicationResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsApplicationResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsApplicationResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsApplicationResponse: - r"""List Applications - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsApplicationRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/applications", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsApplication", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsApplicationResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsApplicationResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsApplicationResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_ats_application_input: Union[models.UnifiedAtsApplicationInput, models.UnifiedAtsApplicationInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsApplicationOutput]: - r"""Create Applications - - Create Applications in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_application_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsApplicationRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_application_input=utils.get_pydantic_model(unified_ats_application_input, models.UnifiedAtsApplicationInput), - ) - - req = self.build_request( - method="POST", - path="/ats/applications", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_application_input, False, False, "json", models.UnifiedAtsApplicationInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAtsApplication", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsApplicationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_ats_application_input: Union[models.UnifiedAtsApplicationInput, models.UnifiedAtsApplicationInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsApplicationOutput]: - r"""Create Applications - - Create Applications in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_application_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsApplicationRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_application_input=utils.get_pydantic_model(unified_ats_application_input, models.UnifiedAtsApplicationInput), - ) - - req = self.build_request( - method="POST", - path="/ats/applications", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_application_input, False, False, "json", models.UnifiedAtsApplicationInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAtsApplication", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsApplicationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsApplicationOutput]: - r"""Retrieve Applications - - Retrieve Applications from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the application you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsApplicationRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/applications/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsApplication", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsApplicationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsApplicationOutput]: - r"""Retrieve Applications - - Retrieve Applications from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the application you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsApplicationRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/applications/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsApplication", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsApplicationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/ats.py b/src/panora_sdk/ats.py deleted file mode 100644 index 62913f1..0000000 --- a/src/panora_sdk/ats.py +++ /dev/null @@ -1,58 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from .sdkconfiguration import SDKConfiguration -from panora_sdk.activities import Activities -from panora_sdk.applications import Applications -from panora_sdk.attachments import Attachments -from panora_sdk.candidates import Candidates -from panora_sdk.departments import Departments -from panora_sdk.eeocs import Eeocs -from panora_sdk.interviews import Interviews -from panora_sdk.jobinterviewstages import Jobinterviewstages -from panora_sdk.jobs import Jobs -from panora_sdk.offers import Offers -from panora_sdk.offices import Offices -from panora_sdk.panora_ats_users import PanoraAtsUsers -from panora_sdk.panora_tags import PanoraTags -from panora_sdk.rejectreasons import Rejectreasons -from panora_sdk.scorecards import Scorecards - -class Ats(BaseSDK): - activities: Activities - applications: Applications - attachments: Attachments - candidates: Candidates - departments: Departments - interviews: Interviews - jobinterviewstages: Jobinterviewstages - jobs: Jobs - offers: Offers - offices: Offices - rejectreasons: Rejectreasons - scorecards: Scorecards - tags: PanoraTags - users: PanoraAtsUsers - eeocs: Eeocs - def __init__(self, sdk_config: SDKConfiguration) -> None: - BaseSDK.__init__(self, sdk_config) - self.sdk_configuration = sdk_config - self._init_sdks() - - def _init_sdks(self): - self.activities = Activities(self.sdk_configuration) - self.applications = Applications(self.sdk_configuration) - self.attachments = Attachments(self.sdk_configuration) - self.candidates = Candidates(self.sdk_configuration) - self.departments = Departments(self.sdk_configuration) - self.interviews = Interviews(self.sdk_configuration) - self.jobinterviewstages = Jobinterviewstages(self.sdk_configuration) - self.jobs = Jobs(self.sdk_configuration) - self.offers = Offers(self.sdk_configuration) - self.offices = Offices(self.sdk_configuration) - self.rejectreasons = Rejectreasons(self.sdk_configuration) - self.scorecards = Scorecards(self.sdk_configuration) - self.tags = PanoraTags(self.sdk_configuration) - self.users = PanoraAtsUsers(self.sdk_configuration) - self.eeocs = Eeocs(self.sdk_configuration) - diff --git a/src/panora_sdk/attachments.py b/src/panora_sdk/attachments.py index 77f6158..333f6e1 100644 --- a/src/panora_sdk/attachments.py +++ b/src/panora_sdk/attachments.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Attachments(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAtsAttachmentResponse: + ) -> Optional[models.ListAccountingAttachmentsResponse]: r"""List Attachments :param x_connection_token: The connection token @@ -35,20 +34,20 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.ListAtsAttachmentRequest( + + request = models.ListAccountingAttachmentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", - path="/ats/attachments", + path="/accounting/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -60,29 +59,27 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingAttachments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - def next_func() -> Optional[models.ListAtsAttachmentResponse]: + + def next_func() -> Optional[models.ListAccountingAttachmentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAtsAttachmentResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsAttachmentResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsAttachmentResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingAttachmentsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingAttachmentsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAtsAttachmentResponse: + ) -> Optional[models.ListAccountingAttachmentsResponse]: r"""List Attachments :param x_connection_token: The connection token @@ -132,20 +143,20 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.ListAtsAttachmentRequest( + + request = models.ListAccountingAttachmentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", - path="/ats/attachments", + path="/accounting/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -157,29 +168,27 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingAttachments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - def next_func() -> Optional[models.ListAtsAttachmentResponse]: + + def next_func() -> Optional[models.ListAccountingAttachmentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,33 +203,50 @@ def next_func() -> Optional[models.ListAtsAttachmentResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsAttachmentResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsAttachmentResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingAttachmentsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingAttachmentsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_ats_attachment_input: Union[models.UnifiedAtsAttachmentInput, models.UnifiedAtsAttachmentInputTypedDict], + unified_accounting_attachment_input: Union[ + models.UnifiedAccountingAttachmentInput, + models.UnifiedAccountingAttachmentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsAttachmentOutput]: + ) -> Optional[models.UnifiedAccountingAttachmentOutput]: r"""Create Attachments - Create Attachments in any supported ATS software + Create attachments in any supported Accounting software :param x_connection_token: The connection token - :param unified_ats_attachment_input: - :param remote_data: Set to true to include data from the original Ats software. + :param unified_accounting_attachment_input: + :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -229,19 +255,22 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.CreateAtsAttachmentRequest( + + request = models.CreateAccountingAttachmentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ats_attachment_input=utils.get_pydantic_model(unified_ats_attachment_input, models.UnifiedAtsAttachmentInput), + unified_accounting_attachment_input=utils.get_pydantic_model( + unified_accounting_attachment_input, + models.UnifiedAccountingAttachmentInput, + ), ) - + req = self.build_request( method="POST", - path="/ats/attachments", + path="/accounting/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -251,57 +280,74 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_attachment_input, False, False, "json", models.UnifiedAtsAttachmentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_attachment_input, + False, + False, + "json", + models.UnifiedAccountingAttachmentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAtsAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_ats_attachment_input: Union[models.UnifiedAtsAttachmentInput, models.UnifiedAtsAttachmentInputTypedDict], + unified_accounting_attachment_input: Union[ + models.UnifiedAccountingAttachmentInput, + models.UnifiedAccountingAttachmentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsAttachmentOutput]: + ) -> Optional[models.UnifiedAccountingAttachmentOutput]: r"""Create Attachments - Create Attachments in any supported ATS software + Create attachments in any supported Accounting software :param x_connection_token: The connection token - :param unified_ats_attachment_input: - :param remote_data: Set to true to include data from the original Ats software. + :param unified_accounting_attachment_input: + :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -310,19 +356,22 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.CreateAtsAttachmentRequest( + + request = models.CreateAccountingAttachmentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ats_attachment_input=utils.get_pydantic_model(unified_ats_attachment_input, models.UnifiedAtsAttachmentInput), + unified_accounting_attachment_input=utils.get_pydantic_model( + unified_accounting_attachment_input, + models.UnifiedAccountingAttachmentInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", - path="/ats/attachments", + path="/accounting/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -332,57 +381,71 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_attachment_input, False, False, "json", models.UnifiedAtsAttachmentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_attachment_input, + False, + False, + "json", + models.UnifiedAccountingAttachmentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAtsAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsAttachmentOutput]: + ) -> Optional[models.UnifiedAccountingAttachmentOutput]: r"""Retrieve Attachments - Retrieve Attachments from any connected Ats software + Retrieve attachments from any connected Accounting software :param x_connection_token: The connection token :param id: id of the attachment you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. + :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -391,19 +454,19 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.RetrieveAtsAttachmentRequest( + + request = models.RetrieveAccountingAttachmentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", - path="/ats/attachments/{id}", + path="/accounting/attachments/{id}", base_url=base_url, url_variables=url_variables, request=request, @@ -415,54 +478,62 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsAttachmentOutput]: + ) -> Optional[models.UnifiedAccountingAttachmentOutput]: r"""Retrieve Attachments - Retrieve Attachments from any connected Ats software + Retrieve attachments from any connected Accounting software :param x_connection_token: The connection token :param id: id of the attachment you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. + :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -471,19 +542,19 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.RetrieveAtsAttachmentRequest( + + request = models.RetrieveAccountingAttachmentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", - path="/ats/attachments/{id}", + path="/accounting/attachments/{id}", base_url=base_url, url_variables=url_variables, request=request, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/auth.py b/src/panora_sdk/auth.py index f992786..f04e995 100644 --- a/src/panora_sdk/auth.py +++ b/src/panora_sdk/auth.py @@ -4,13 +4,14 @@ from .sdkconfiguration import SDKConfiguration from panora_sdk.login import Login + class Auth(BaseSDK): login: Login + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.login = Login(self.sdk_configuration) - diff --git a/src/panora_sdk/automations.py b/src/panora_sdk/automations.py index 1fbc6f6..24eadd4 100644 --- a/src/panora_sdk/automations.py +++ b/src/panora_sdk/automations.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Automations(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationAutomationsResponse: + ) -> Optional[models.ListMarketingautomationAutomationsResponse]: r"""List Automations :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationAutomationsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/automations", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingautomationAutomations", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationAutomations", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationAutomationsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingautomationAutomationsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationAutomationsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationAutomationsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationAutomationsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationAutomationsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationAutomationsResponse: + ) -> Optional[models.ListMarketingautomationAutomationsResponse]: r"""List Automations :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationAutomationsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/automations", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingautomationAutomations", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationAutomations", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationAutomationsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListMarketingautomationAutomationsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationAutomationsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationAutomationsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationAutomationsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationAutomationsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_automation_input: Union[models.UnifiedMarketingautomationAutomationInput, models.UnifiedMarketingautomationAutomationInputTypedDict], + unified_marketingautomation_automation_input: Union[ + models.UnifiedMarketingautomationAutomationInput, + models.UnifiedMarketingautomationAutomationInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create a automation in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_automation_input: + :param unified_marketingautomation_automation_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationAutomationRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_automation_input=utils.get_pydantic_model(unified_marketingautomation_automation_input, models.UnifiedMarketingautomationAutomationInput), + unified_marketingautomation_automation_input=utils.get_pydantic_model( + unified_marketingautomation_automation_input, + models.UnifiedMarketingautomationAutomationInput, + ), ) - + req = self.build_request( method="POST", path="/marketingautomation/automations", @@ -251,45 +280,63 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_automation_input, False, False, "json", models.UnifiedMarketingautomationAutomationInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_automation_input, + False, + False, + "json", + models.UnifiedMarketingautomationAutomationInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createMarketingautomationAutomation", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationAutomation", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationAutomationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, + Optional[models.UnifiedMarketingautomationAutomationOutput], + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_automation_input: Union[models.UnifiedMarketingautomationAutomationInput, models.UnifiedMarketingautomationAutomationInputTypedDict], + unified_marketingautomation_automation_input: Union[ + models.UnifiedMarketingautomationAutomationInput, + models.UnifiedMarketingautomationAutomationInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +347,7 @@ async def create_async( Create a automation in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_automation_input: + :param unified_marketingautomation_automation_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +357,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationAutomationRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_automation_input=utils.get_pydantic_model(unified_marketingautomation_automation_input, models.UnifiedMarketingautomationAutomationInput), + unified_marketingautomation_automation_input=utils.get_pydantic_model( + unified_marketingautomation_automation_input, + models.UnifiedMarketingautomationAutomationInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/marketingautomation/automations", base_url=base_url, @@ -332,43 +382,58 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_automation_input, False, False, "json", models.UnifiedMarketingautomationAutomationInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_automation_input, + False, + False, + "json", + models.UnifiedMarketingautomationAutomationInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createMarketingautomationAutomation", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationAutomation", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationAutomationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, + Optional[models.UnifiedMarketingautomationAutomationOutput], + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +456,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationAutomationRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/automations/{id}", @@ -415,40 +480,49 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationAutomation", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationAutomation", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationAutomationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, + Optional[models.UnifiedMarketingautomationAutomationOutput], + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +545,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationAutomationRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/automations/{id}", base_url=base_url, @@ -495,34 +569,42 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationAutomation", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationAutomation", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationAutomationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, + Optional[models.UnifiedMarketingautomationAutomationOutput], + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/balancesheets.py b/src/panora_sdk/balancesheets.py index d13ca23..11fa543 100644 --- a/src/panora_sdk/balancesheets.py +++ b/src/panora_sdk/balancesheets.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Balancesheets(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingBalanceSheetsResponse: + ) -> Optional[models.ListAccountingBalanceSheetsResponse]: r"""List BalanceSheets :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingBalanceSheetsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/balancesheets", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingBalanceSheets", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingBalanceSheets", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingBalanceSheetsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingBalanceSheetsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingBalanceSheetsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingBalanceSheetsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingBalanceSheetsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingBalanceSheetsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingBalanceSheetsResponse: + ) -> Optional[models.ListAccountingBalanceSheetsResponse]: r"""List BalanceSheets :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingBalanceSheetsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/balancesheets", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingBalanceSheets", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingBalanceSheets", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingBalanceSheetsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingBalanceSheetsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingBalanceSheetsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingBalanceSheetsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingBalanceSheetsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingBalanceSheetsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingBalanceSheetRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/balancesheets/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingBalanceSheet", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingBalanceSheet", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingBalancesheetOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingBalancesheetOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingBalanceSheetRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/balancesheets/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingBalanceSheet", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingBalanceSheet", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingBalancesheetOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingBalancesheetOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/bankinfos.py b/src/panora_sdk/bankinfos.py deleted file mode 100644 index 6ef1b23..0000000 --- a/src/panora_sdk/bankinfos.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Bankinfos(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisBankInfoResponse: - r"""List Bank Info - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisBankInfoRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/bankinfos", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisBankInfo", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisBankInfoResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisBankInfoResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisBankInfoResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisBankInfoResponse: - r"""List Bank Info - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisBankInfoRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/bankinfos", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisBankInfo", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisBankInfoResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisBankInfoResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisBankInfoResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisBankinfoOutput]: - r"""Retrieve Bank Info - - Retrieve Bank Info from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the bank info you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisBankInfoRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/bankinfos/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisBankInfo", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisBankinfoOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisBankinfoOutput]: - r"""Retrieve Bank Info - - Retrieve Bank Info from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the bank info you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisBankInfoRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/bankinfos/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisBankInfo", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisBankinfoOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/basesdk.py b/src/panora_sdk/basesdk.py index 35ed6eb..cfcb1eb 100644 --- a/src/panora_sdk/basesdk.py +++ b/src/panora_sdk/basesdk.py @@ -2,12 +2,16 @@ from .sdkconfiguration import SDKConfiguration import httpx -from panora_sdk import models -from panora_sdk._hooks import AfterErrorContext, AfterSuccessContext, BeforeRequestContext -import panora_sdk.utils as utils +from panora_sdk import models, utils +from panora_sdk._hooks import ( + AfterErrorContext, + AfterSuccessContext, + BeforeRequestContext, +) from panora_sdk.utils import RetryConfig, SerializedRequestBody, get_body_content from typing import Callable, List, Optional, Tuple + class BaseSDK: sdk_configuration: SDKConfiguration @@ -25,6 +29,46 @@ def get_url(self, base_url, url_variables): return utils.template_url(base_url, url_variables) + def build_request_async( + self, + method, + path, + base_url, + url_variables, + request, + request_body_required, + request_has_path_params, + request_has_query_params, + user_agent_header, + accept_header_value, + _globals=None, + security=None, + timeout_ms: Optional[int] = None, + get_serialized_body: Optional[ + Callable[[], Optional[SerializedRequestBody]] + ] = None, + url_override: Optional[str] = None, + ) -> httpx.Request: + client = self.sdk_configuration.async_client + return self.build_request_with_client( + client, + method, + path, + base_url, + url_variables, + request, + request_body_required, + request_has_path_params, + request_has_query_params, + user_agent_header, + accept_header_value, + _globals, + security, + timeout_ms, + get_serialized_body, + url_override, + ) + def build_request( self, method, @@ -46,7 +90,46 @@ def build_request( url_override: Optional[str] = None, ) -> httpx.Request: client = self.sdk_configuration.client + return self.build_request_with_client( + client, + method, + path, + base_url, + url_variables, + request, + request_body_required, + request_has_path_params, + request_has_query_params, + user_agent_header, + accept_header_value, + _globals, + security, + timeout_ms, + get_serialized_body, + url_override, + ) + def build_request_with_client( + self, + client, + method, + path, + base_url, + url_variables, + request, + request_body_required, + request_has_path_params, + request_has_query_params, + user_agent_header, + accept_header_value, + _globals=None, + security=None, + timeout_ms: Optional[int] = None, + get_serialized_body: Optional[ + Callable[[], Optional[SerializedRequestBody]] + ] = None, + url_override: Optional[str] = None, + ) -> httpx.Request: query_params = {} url = url_override @@ -70,7 +153,7 @@ def build_request( if security is not None: if callable(security): security = security() - + if security is not None: security_headers, security_query_params = utils.get_security(security) headers = {**headers, **security_headers} @@ -130,7 +213,7 @@ def do(): req.method, req.url, req.headers, - get_body_content(req) + get_body_content(req), ) http_res = client.send(req, stream=stream) except Exception as e: @@ -150,7 +233,7 @@ def do(): http_res.status_code, http_res.url, http_res.headers, - "" if stream else http_res.text + "" if stream else http_res.text, ) if utils.match_status_codes(error_status_codes, http_res.status_code): @@ -190,6 +273,7 @@ async def do_request_async( ) -> httpx.Response: client = self.sdk_configuration.async_client logger = self.sdk_configuration.debug_logger + async def do(): http_res = None try: @@ -201,7 +285,7 @@ async def do(): req.method, req.url, req.headers, - get_body_content(req) + get_body_content(req), ) http_res = await client.send(req, stream=stream) except Exception as e: @@ -221,7 +305,7 @@ async def do(): http_res.status_code, http_res.url, http_res.headers, - "" if stream else http_res.text + "" if stream else http_res.text, ) if utils.match_status_codes(error_status_codes, http_res.status_code): diff --git a/src/panora_sdk/benefits.py b/src/panora_sdk/benefits.py deleted file mode 100644 index dcab906..0000000 --- a/src/panora_sdk/benefits.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Benefits(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisBenefitsResponse: - r"""List Benefits - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisBenefitsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/benefits", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisBenefits", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisBenefitsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisBenefitsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisBenefitsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisBenefitsResponse: - r"""List Benefits - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisBenefitsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/benefits", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisBenefits", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisBenefitsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisBenefitsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisBenefitsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisBenefitOutput]: - r"""Retrieve Benefit - - Retrieve a Benefit from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the benefit you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisBenefitRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/benefits/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisBenefit", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisBenefitOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisBenefitOutput]: - r"""Retrieve Benefit - - Retrieve a Benefit from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the benefit you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisBenefitRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/benefits/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisBenefit", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisBenefitOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/campaigns.py b/src/panora_sdk/campaigns.py index 38373c0..2fae754 100644 --- a/src/panora_sdk/campaigns.py +++ b/src/panora_sdk/campaigns.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Campaigns(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationCampaignsResponse: + ) -> Optional[models.ListMarketingautomationCampaignsResponse]: r"""List Campaigns :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationCampaignsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/campaigns", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingautomationCampaigns", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationCampaigns", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationCampaignsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingautomationCampaignsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationCampaignsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationCampaignsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationCampaignsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationCampaignsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationCampaignsResponse: + ) -> Optional[models.ListMarketingautomationCampaignsResponse]: r"""List Campaigns :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationCampaignsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/campaigns", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingautomationCampaigns", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationCampaigns", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationCampaignsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListMarketingautomationCampaignsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationCampaignsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationCampaignsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationCampaignsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationCampaignsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_campaign_input: Union[models.UnifiedMarketingautomationCampaignInput, models.UnifiedMarketingautomationCampaignInputTypedDict], + unified_marketingautomation_campaign_input: Union[ + models.UnifiedMarketingautomationCampaignInput, + models.UnifiedMarketingautomationCampaignInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create a campaign in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_campaign_input: + :param unified_marketingautomation_campaign_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationCampaignRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_campaign_input=utils.get_pydantic_model(unified_marketingautomation_campaign_input, models.UnifiedMarketingautomationCampaignInput), + unified_marketingautomation_campaign_input=utils.get_pydantic_model( + unified_marketingautomation_campaign_input, + models.UnifiedMarketingautomationCampaignInput, + ), ) - + req = self.build_request( method="POST", path="/marketingautomation/campaigns", @@ -251,45 +280,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_campaign_input, False, False, "json", models.UnifiedMarketingautomationCampaignInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_campaign_input, + False, + False, + "json", + models.UnifiedMarketingautomationCampaignInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createMarketingautomationCampaign", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationCampaign", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_campaign_input: Union[models.UnifiedMarketingautomationCampaignInput, models.UnifiedMarketingautomationCampaignInputTypedDict], + unified_marketingautomation_campaign_input: Union[ + models.UnifiedMarketingautomationCampaignInput, + models.UnifiedMarketingautomationCampaignInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +346,7 @@ async def create_async( Create a campaign in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_campaign_input: + :param unified_marketingautomation_campaign_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +356,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationCampaignRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_campaign_input=utils.get_pydantic_model(unified_marketingautomation_campaign_input, models.UnifiedMarketingautomationCampaignInput), + unified_marketingautomation_campaign_input=utils.get_pydantic_model( + unified_marketingautomation_campaign_input, + models.UnifiedMarketingautomationCampaignInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/marketingautomation/campaigns", base_url=base_url, @@ -332,43 +381,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_campaign_input, False, False, "json", models.UnifiedMarketingautomationCampaignInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_campaign_input, + False, + False, + "json", + models.UnifiedMarketingautomationCampaignInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createMarketingautomationCampaign", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationCampaign", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +454,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationCampaignRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/campaigns/{id}", @@ -415,40 +478,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationCampaign", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationCampaign", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +542,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationCampaignRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/campaigns/{id}", base_url=base_url, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationCampaign", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationCampaign", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationCampaignOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/candidates.py b/src/panora_sdk/candidates.py deleted file mode 100644 index f085c1d..0000000 --- a/src/panora_sdk/candidates.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class Candidates(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsCandidateResponse: - r"""List Candidates - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsCandidateRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/candidates", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsCandidate", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsCandidateResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsCandidateResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsCandidateResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsCandidateResponse: - r"""List Candidates - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsCandidateRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/candidates", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsCandidate", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsCandidateResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsCandidateResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsCandidateResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_ats_candidate_input: Union[models.UnifiedAtsCandidateInput, models.UnifiedAtsCandidateInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsCandidateOutput]: - r"""Create Candidates - - Create Candidates in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_candidate_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsCandidateRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_candidate_input=utils.get_pydantic_model(unified_ats_candidate_input, models.UnifiedAtsCandidateInput), - ) - - req = self.build_request( - method="POST", - path="/ats/candidates", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_candidate_input, False, False, "json", models.UnifiedAtsCandidateInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAtsCandidate", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsCandidateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_ats_candidate_input: Union[models.UnifiedAtsCandidateInput, models.UnifiedAtsCandidateInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsCandidateOutput]: - r"""Create Candidates - - Create Candidates in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_candidate_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsCandidateRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_candidate_input=utils.get_pydantic_model(unified_ats_candidate_input, models.UnifiedAtsCandidateInput), - ) - - req = self.build_request( - method="POST", - path="/ats/candidates", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_candidate_input, False, False, "json", models.UnifiedAtsCandidateInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAtsCandidate", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsCandidateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsCandidateOutput]: - r"""Retrieve Candidates - - Retrieve Candidates from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the candidate you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsCandidateRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/candidates/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsCandidate", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsCandidateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsCandidateOutput]: - r"""Retrieve Candidates - - Retrieve Candidates from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the candidate you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsCandidateRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/candidates/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsCandidate", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsCandidateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/cashflowstatements.py b/src/panora_sdk/cashflowstatements.py index a14bf0b..a64995d 100644 --- a/src/panora_sdk/cashflowstatements.py +++ b/src/panora_sdk/cashflowstatements.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Cashflowstatements(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingCashflowStatementResponse: + ) -> Optional[models.ListAccountingCashflowStatementResponse]: r"""List CashflowStatements :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingCashflowStatementRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/cashflowstatements", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingCashflowStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingCashflowStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingCashflowStatementResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingCashflowStatementResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingCashflowStatementResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingCashflowStatementResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingCashflowStatementResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingCashflowStatementResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingCashflowStatementResponse: + ) -> Optional[models.ListAccountingCashflowStatementResponse]: r"""List CashflowStatements :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingCashflowStatementRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/cashflowstatements", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingCashflowStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingCashflowStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingCashflowStatementResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingCashflowStatementResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingCashflowStatementResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingCashflowStatementResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingCashflowStatementResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingCashflowStatementResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingCashflowStatementRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/cashflowstatements/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingCashflowStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingCashflowStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingCashflowstatementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingCashflowstatementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingCashflowStatementRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/cashflowstatements/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingCashflowStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingCashflowStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingCashflowstatementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingCashflowstatementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/collections.py b/src/panora_sdk/collections.py index d3174b8..44a6141 100644 --- a/src/panora_sdk/collections.py +++ b/src/panora_sdk/collections.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Collections(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingCollectionsResponse: + ) -> Optional[models.ListTicketingCollectionsResponse]: r"""List Collections :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingCollectionsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/collections", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingCollections", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingCollections", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingCollectionsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingCollectionsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingCollectionsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingCollectionsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingCollectionsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingCollectionsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingCollectionsResponse: + ) -> Optional[models.ListTicketingCollectionsResponse]: r"""List Collections :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingCollectionsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/collections", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingCollections", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingCollections", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingCollectionsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListTicketingCollectionsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingCollectionsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingCollectionsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingCollectionsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingCollectionsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCollectionRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/collections/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCollection", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCollection", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingCollectionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingCollectionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCollectionRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/collections/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCollection", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCollection", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingCollectionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingCollectionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/comments.py b/src/panora_sdk/comments.py index f2380e7..1145436 100644 --- a/src/panora_sdk/comments.py +++ b/src/panora_sdk/comments.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Comments(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingCommentsResponse: + ) -> Optional[models.ListTicketingCommentsResponse]: r"""List Comments :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingCommentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/comments", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingComments", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingComments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingCommentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingCommentsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingCommentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingCommentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingCommentsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingCommentsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingCommentsResponse: + ) -> Optional[models.ListTicketingCommentsResponse]: r"""List Comments :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingCommentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/comments", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingComments", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingComments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingCommentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListTicketingCommentsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingCommentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingCommentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingCommentsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingCommentsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_ticketing_comment_input: Union[models.UnifiedTicketingCommentInput, models.UnifiedTicketingCommentInputTypedDict], + unified_ticketing_comment_input: Union[ + models.UnifiedTicketingCommentInput, + models.UnifiedTicketingCommentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Comments in any supported Ticketing software :param x_connection_token: The connection token - :param unified_ticketing_comment_input: + :param unified_ticketing_comment_input: :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateTicketingCommentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ticketing_comment_input=utils.get_pydantic_model(unified_ticketing_comment_input, models.UnifiedTicketingCommentInput), + unified_ticketing_comment_input=utils.get_pydantic_model( + unified_ticketing_comment_input, models.UnifiedTicketingCommentInput + ), ) - + req = self.build_request( method="POST", path="/ticketing/comments", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ticketing_comment_input, False, False, "json", models.UnifiedTicketingCommentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ticketing_comment_input, + False, + False, + "json", + models.UnifiedTicketingCommentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createTicketingComment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createTicketingComment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingCommentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingCommentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_ticketing_comment_input: Union[models.UnifiedTicketingCommentInput, models.UnifiedTicketingCommentInputTypedDict], + unified_ticketing_comment_input: Union[ + models.UnifiedTicketingCommentInput, + models.UnifiedTicketingCommentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Comments in any supported Ticketing software :param x_connection_token: The connection token - :param unified_ticketing_comment_input: + :param unified_ticketing_comment_input: :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateTicketingCommentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ticketing_comment_input=utils.get_pydantic_model(unified_ticketing_comment_input, models.UnifiedTicketingCommentInput), + unified_ticketing_comment_input=utils.get_pydantic_model( + unified_ticketing_comment_input, models.UnifiedTicketingCommentInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/ticketing/comments", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ticketing_comment_input, False, False, "json", models.UnifiedTicketingCommentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ticketing_comment_input, + False, + False, + "json", + models.UnifiedTicketingCommentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createTicketingComment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createTicketingComment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingCommentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingCommentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingCommentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/comments/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingComment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingComment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RetrieveTicketingCommentResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.RetrieveTicketingCommentResponseBody] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingCommentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/comments/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingComment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingComment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RetrieveTicketingCommentResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.RetrieveTicketingCommentResponseBody] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/companies.py b/src/panora_sdk/companies.py index f2cb3dd..1e57bb5 100644 --- a/src/panora_sdk/companies.py +++ b/src/panora_sdk/companies.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Companies(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmCompanyResponse: + ) -> Optional[models.ListCrmCompanyResponse]: r"""List Companies :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmCompanyRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/companies", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmCompany", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmCompanyResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmCompanyResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmCompanyResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmCompanyResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmCompanyResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmCompanyResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmCompanyResponse: + ) -> Optional[models.ListCrmCompanyResponse]: r"""List Companies :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmCompanyRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/companies", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmCompany", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmCompanyResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,36 @@ def next_func() -> Optional[models.ListCrmCompanyResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmCompanyResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmCompanyResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmCompanyResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmCompanyResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_crm_company_input: Union[models.UnifiedCrmCompanyInput, models.UnifiedCrmCompanyInputTypedDict], + unified_crm_company_input: Union[ + models.UnifiedCrmCompanyInput, models.UnifiedCrmCompanyInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +242,7 @@ def create( Create Companies in any supported CRM software :param x_connection_token: The connection token - :param unified_crm_company_input: + :param unified_crm_company_input: :param remote_data: Set to true to include data from the original CRM software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +252,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmCompanyRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_company_input=utils.get_pydantic_model(unified_crm_company_input, models.UnifiedCrmCompanyInput), + unified_crm_company_input=utils.get_pydantic_model( + unified_crm_company_input, models.UnifiedCrmCompanyInput + ), ) - + req = self.build_request( method="POST", path="/crm/companies", @@ -251,45 +276,61 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_company_input, False, False, "json", models.UnifiedCrmCompanyInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_company_input, + False, + False, + "json", + models.UnifiedCrmCompanyInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createCrmCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmCompany", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmCompanyOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmCompanyOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_crm_company_input: Union[models.UnifiedCrmCompanyInput, models.UnifiedCrmCompanyInputTypedDict], + unified_crm_company_input: Union[ + models.UnifiedCrmCompanyInput, models.UnifiedCrmCompanyInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +341,7 @@ async def create_async( Create Companies in any supported CRM software :param x_connection_token: The connection token - :param unified_crm_company_input: + :param unified_crm_company_input: :param remote_data: Set to true to include data from the original CRM software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +351,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmCompanyRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_company_input=utils.get_pydantic_model(unified_crm_company_input, models.UnifiedCrmCompanyInput), + unified_crm_company_input=utils.get_pydantic_model( + unified_crm_company_input, models.UnifiedCrmCompanyInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/crm/companies", base_url=base_url, @@ -332,43 +375,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_company_input, False, False, "json", models.UnifiedCrmCompanyInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_company_input, + False, + False, + "json", + models.UnifiedCrmCompanyInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createCrmCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmCompany", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmCompanyOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmCompanyOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +448,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmCompanyRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/companies/{id}", @@ -415,40 +472,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmCompany", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmCompanyOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmCompanyOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +536,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmCompanyRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/companies/{id}", base_url=base_url, @@ -495,34 +560,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmCompany", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmCompanyOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmCompanyOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/companyinfos.py b/src/panora_sdk/companyinfos.py index 996f44a..745a39d 100644 --- a/src/panora_sdk/companyinfos.py +++ b/src/panora_sdk/companyinfos.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Companyinfos(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingCompanyInfosResponse: + ) -> Optional[models.ListAccountingCompanyInfosResponse]: r"""List CompanyInfos :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingCompanyInfosRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/companyinfos", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingCompanyInfos", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingCompanyInfos", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingCompanyInfosResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingCompanyInfosResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingCompanyInfosResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingCompanyInfosResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingCompanyInfosResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingCompanyInfosResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingCompanyInfosResponse: + ) -> Optional[models.ListAccountingCompanyInfosResponse]: r"""List CompanyInfos :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingCompanyInfosRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/companyinfos", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingCompanyInfos", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingCompanyInfos", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingCompanyInfosResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingCompanyInfosResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingCompanyInfosResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingCompanyInfosResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingCompanyInfosResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingCompanyInfosResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingCompanyInfoRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/companyinfos/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingCompanyInfo", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingCompanyInfo", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingCompanyinfoOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingCompanyinfoOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingCompanyInfoRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/companyinfos/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingCompanyInfo", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingCompanyInfo", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingCompanyinfoOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingCompanyinfoOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/connections.py b/src/panora_sdk/connections.py index 88795dd..beb30b5 100644 --- a/src/panora_sdk/connections.py +++ b/src/panora_sdk/connections.py @@ -1,17 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import List, Optional + class Connections(BaseSDK): - - def list( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -26,7 +25,7 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -43,40 +42,48 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listConnections", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listConnections", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.Connection]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.Connection]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -91,10 +98,10 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/connections", base_url=base_url, @@ -108,34 +115,41 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listConnections", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listConnections", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.Connection]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[List[models.Connection]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/contacts.py b/src/panora_sdk/contacts.py index 13d80bc..ef4d390 100644 --- a/src/panora_sdk/contacts.py +++ b/src/panora_sdk/contacts.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Contacts(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingContactsResponse: + ) -> Optional[models.ListTicketingContactsResponse]: r"""List Contacts :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/contacts", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingContactsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingContactsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingContactsResponse: + ) -> Optional[models.ListTicketingContactsResponse]: r"""List Contacts :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/contacts", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListTicketingContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingContactsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingContactsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/contacts/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RetrieveTicketingContactResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.RetrieveTicketingContactResponseBody] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/contacts/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RetrieveTicketingContactResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.RetrieveTicketingContactResponseBody] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/creditnotes.py b/src/panora_sdk/creditnotes.py index 826a0c6..71f1c6f 100644 --- a/src/panora_sdk/creditnotes.py +++ b/src/panora_sdk/creditnotes.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Creditnotes(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingCreditNoteResponse: + ) -> Optional[models.ListAccountingCreditNoteResponse]: r"""List CreditNotes :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingCreditNoteRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/creditnotes", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingCreditNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingCreditNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingCreditNoteResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingCreditNoteResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingCreditNoteResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingCreditNoteResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingCreditNoteResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingCreditNoteResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingCreditNoteResponse: + ) -> Optional[models.ListAccountingCreditNoteResponse]: r"""List CreditNotes :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingCreditNoteRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/creditnotes", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingCreditNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingCreditNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingCreditNoteResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListAccountingCreditNoteResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingCreditNoteResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingCreditNoteResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingCreditNoteResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingCreditNoteResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingCreditNoteRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/creditnotes/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingCreditNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingCreditNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingCreditnoteOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingCreditnoteOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingCreditNoteRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/creditnotes/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingCreditNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingCreditNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingCreditnoteOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingCreditnoteOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/crm.py b/src/panora_sdk/crm.py index 2751c6f..1617dfa 100644 --- a/src/panora_sdk/crm.py +++ b/src/panora_sdk/crm.py @@ -11,6 +11,7 @@ from panora_sdk.stages import Stages from panora_sdk.tasks import Tasks + class Crm(BaseSDK): companies: Companies contacts: PanoraContacts @@ -20,11 +21,12 @@ class Crm(BaseSDK): stages: Stages tasks: Tasks users: PanoraUsers + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.companies = Companies(self.sdk_configuration) self.contacts = PanoraContacts(self.sdk_configuration) @@ -34,4 +36,3 @@ def _init_sdks(self): self.stages = Stages(self.sdk_configuration) self.tasks = Tasks(self.sdk_configuration) self.users = PanoraUsers(self.sdk_configuration) - diff --git a/src/panora_sdk/customers.py b/src/panora_sdk/customers.py index 5d937b7..a5f3c11 100644 --- a/src/panora_sdk/customers.py +++ b/src/panora_sdk/customers.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Customers(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceCustomersResponse: + ) -> Optional[models.ListEcommerceCustomersResponse]: r"""List Customers :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceCustomersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ecommerce/customers", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listEcommerceCustomers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceCustomers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceCustomersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListEcommerceCustomersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceCustomersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceCustomersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceCustomersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListEcommerceCustomersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceCustomersResponse: + ) -> Optional[models.ListEcommerceCustomersResponse]: r"""List Customers :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceCustomersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/customers", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listEcommerceCustomers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceCustomers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceCustomersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListEcommerceCustomersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceCustomersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceCustomersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceCustomersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListEcommerceCustomersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceCustomerRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ecommerce/customers/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveEcommerceCustomer", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceCustomer", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceCustomerOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceCustomerOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceCustomerRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/customers/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveEcommerceCustomer", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceCustomer", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceCustomerOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceCustomerOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/deals.py b/src/panora_sdk/deals.py index 297c622..b7643dc 100644 --- a/src/panora_sdk/deals.py +++ b/src/panora_sdk/deals.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Deals(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmDealsResponse: + ) -> Optional[models.ListCrmDealsResponse]: r"""List Deals :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmDealsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/deals", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmDeals", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmDeals", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmDealsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmDealsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmDealsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmDealsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmDealsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmDealsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmDealsResponse: + ) -> Optional[models.ListCrmDealsResponse]: r"""List Deals :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmDealsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/deals", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmDeals", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmDeals", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmDealsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,36 @@ def next_func() -> Optional[models.ListCrmDealsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmDealsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmDealsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmDealsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmDealsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_crm_deal_input: Union[models.UnifiedCrmDealInput, models.UnifiedCrmDealInputTypedDict], + unified_crm_deal_input: Union[ + models.UnifiedCrmDealInput, models.UnifiedCrmDealInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +242,7 @@ def create( Create Deals in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_deal_input: + :param unified_crm_deal_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +252,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmDealRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_deal_input=utils.get_pydantic_model(unified_crm_deal_input, models.UnifiedCrmDealInput), + unified_crm_deal_input=utils.get_pydantic_model( + unified_crm_deal_input, models.UnifiedCrmDealInput + ), ) - + req = self.build_request( method="POST", path="/crm/deals", @@ -251,45 +276,61 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_deal_input, False, False, "json", models.UnifiedCrmDealInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_deal_input, + False, + False, + "json", + models.UnifiedCrmDealInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createCrmDeal", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmDeal", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmDealOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmDealOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_crm_deal_input: Union[models.UnifiedCrmDealInput, models.UnifiedCrmDealInputTypedDict], + unified_crm_deal_input: Union[ + models.UnifiedCrmDealInput, models.UnifiedCrmDealInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +341,7 @@ async def create_async( Create Deals in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_deal_input: + :param unified_crm_deal_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +351,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmDealRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_deal_input=utils.get_pydantic_model(unified_crm_deal_input, models.UnifiedCrmDealInput), + unified_crm_deal_input=utils.get_pydantic_model( + unified_crm_deal_input, models.UnifiedCrmDealInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/crm/deals", base_url=base_url, @@ -332,43 +375,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_deal_input, False, False, "json", models.UnifiedCrmDealInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_deal_input, + False, + False, + "json", + models.UnifiedCrmDealInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createCrmDeal", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmDeal", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmDealOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmDealOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +448,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmDealRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/deals/{id}", @@ -415,40 +472,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmDeal", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmDeal", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmDealOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmDealOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +536,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmDealRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/deals/{id}", base_url=base_url, @@ -495,34 +560,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmDeal", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmDeal", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmDealOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmDealOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/departments.py b/src/panora_sdk/departments.py deleted file mode 100644 index 86eb4ac..0000000 --- a/src/panora_sdk/departments.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Departments(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsDepartmentsResponse: - r"""List Departments - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsDepartmentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/departments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsDepartments", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsDepartmentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsDepartmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsDepartmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsDepartmentsResponse: - r"""List Departments - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsDepartmentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/departments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsDepartments", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsDepartmentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsDepartmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsDepartmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsDepartmentOutput]: - r"""Retrieve Departments - - Retrieve Departments from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the department you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsDepartmentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/departments/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsDepartment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsDepartmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsDepartmentOutput]: - r"""Retrieve Departments - - Retrieve Departments from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the department you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsDepartmentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/departments/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsDepartment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsDepartmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/dependents.py b/src/panora_sdk/dependents.py deleted file mode 100644 index f55f766..0000000 --- a/src/panora_sdk/dependents.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Dependents(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisDependentsResponse: - r"""List Dependents - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisDependentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/dependents", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisDependents", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisDependentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisDependentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisDependentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisDependentsResponse: - r"""List Dependents - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisDependentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/dependents", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisDependents", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisDependentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisDependentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisDependentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisDependentOutput]: - r"""Retrieve Dependent - - Retrieve a Dependent from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the dependent you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisDependentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/dependents/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisDependent", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisDependentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisDependentOutput]: - r"""Retrieve Dependent - - Retrieve a Dependent from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the dependent you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisDependentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/dependents/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisDependent", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisDependentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/ecommerce.py b/src/panora_sdk/ecommerce.py index 3620d2e..c091ae7 100644 --- a/src/panora_sdk/ecommerce.py +++ b/src/panora_sdk/ecommerce.py @@ -7,19 +7,20 @@ from panora_sdk.orders import Orders from panora_sdk.products import Products + class Ecommerce(BaseSDK): products: Products orders: Orders customers: Customers fulfillments: Fulfillments + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.products = Products(self.sdk_configuration) self.orders = Orders(self.sdk_configuration) self.customers = Customers(self.sdk_configuration) self.fulfillments = Fulfillments(self.sdk_configuration) - diff --git a/src/panora_sdk/eeocs.py b/src/panora_sdk/eeocs.py deleted file mode 100644 index 96bbe05..0000000 --- a/src/panora_sdk/eeocs.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Eeocs(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsEeocsResponse: - r"""List Eeocss - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsEeocsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/eeocs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsEeocs", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsEeocsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsEeocsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsEeocsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsEeocsResponse: - r"""List Eeocss - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsEeocsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/eeocs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsEeocs", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsEeocsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsEeocsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsEeocsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsEeocsOutput]: - r"""Retrieve Eeocs - - Retrieve a eeocs from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the eeocs you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsEeocsRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/eeocs/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsEeocs", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsEeocsOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsEeocsOutput]: - r"""Retrieve Eeocs - - Retrieve a eeocs from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the eeocs you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsEeocsRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/eeocs/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsEeocs", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsEeocsOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/emails.py b/src/panora_sdk/emails.py index 87112e3..7088482 100644 --- a/src/panora_sdk/emails.py +++ b/src/panora_sdk/emails.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Emails(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationEmailsResponse: + ) -> Optional[models.ListMarketingautomationEmailsResponse]: r"""List Emails :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationEmailsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/emails", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingautomationEmails", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationEmails", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationEmailsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingautomationEmailsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationEmailsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationEmailsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationEmailsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationEmailsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationEmailsResponse: + ) -> Optional[models.ListMarketingautomationEmailsResponse]: r"""List Emails :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationEmailsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/emails", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingautomationEmails", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationEmails", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationEmailsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListMarketingautomationEmailsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationEmailsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationEmailsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationEmailsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationEmailsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationEmailRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/emails/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationEmail", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationEmail", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationEmailOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationEmailOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationEmailRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/emails/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationEmail", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationEmail", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationEmailOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationEmailOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/employeepayrollruns.py b/src/panora_sdk/employeepayrollruns.py deleted file mode 100644 index 3360086..0000000 --- a/src/panora_sdk/employeepayrollruns.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Employeepayrollruns(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmployeePayrollRunResponse: - r"""List Employee Payroll Runs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmployeePayrollRunRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employeepayrollruns", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisEmployeePayrollRun", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmployeePayrollRunResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmployeePayrollRunResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmployeePayrollRunResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmployeePayrollRunResponse: - r"""List Employee Payroll Runs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmployeePayrollRunRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employeepayrollruns", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisEmployeePayrollRun", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmployeePayrollRunResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmployeePayrollRunResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmployeePayrollRunResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployeepayrollrunOutput]: - r"""Retrieve Employee Payroll Run - - Retrieve Employee Payroll Run from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employeepayrollrun you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmployeePayrollRunRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employeepayrollruns/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisEmployeePayrollRun", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployeepayrollrunOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployeepayrollrunOutput]: - r"""Retrieve Employee Payroll Run - - Retrieve Employee Payroll Run from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employeepayrollrun you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmployeePayrollRunRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employeepayrollruns/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisEmployeePayrollRun", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployeepayrollrunOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/employees.py b/src/panora_sdk/employees.py deleted file mode 100644 index 8a0ad83..0000000 --- a/src/panora_sdk/employees.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class Employees(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmployeesResponse: - r"""List Employees - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmployeesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employees", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisEmployees", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmployeesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmployeesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmployeesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmployeesResponse: - r"""List Employees - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmployeesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employees", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisEmployees", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmployeesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmployeesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmployeesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_hris_employee_input: Union[models.UnifiedHrisEmployeeInput, models.UnifiedHrisEmployeeInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployeeOutput]: - r"""Create Employees - - Create Employees in any supported Hris software - - :param x_connection_token: The connection token - :param unified_hris_employee_input: - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateHrisEmployeeRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_hris_employee_input=utils.get_pydantic_model(unified_hris_employee_input, models.UnifiedHrisEmployeeInput), - ) - - req = self.build_request( - method="POST", - path="/hris/employees", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_hris_employee_input, False, False, "json", models.UnifiedHrisEmployeeInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createHrisEmployee", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployeeOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_hris_employee_input: Union[models.UnifiedHrisEmployeeInput, models.UnifiedHrisEmployeeInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployeeOutput]: - r"""Create Employees - - Create Employees in any supported Hris software - - :param x_connection_token: The connection token - :param unified_hris_employee_input: - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateHrisEmployeeRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_hris_employee_input=utils.get_pydantic_model(unified_hris_employee_input, models.UnifiedHrisEmployeeInput), - ) - - req = self.build_request( - method="POST", - path="/hris/employees", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_hris_employee_input, False, False, "json", models.UnifiedHrisEmployeeInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createHrisEmployee", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployeeOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployeeOutput]: - r"""Retrieve Employee - - Retrieve an Employee from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employee you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmployeeRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employees/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisEmployee", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployeeOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployeeOutput]: - r"""Retrieve Employee - - Retrieve an Employee from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employee you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmployeeRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employees/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisEmployee", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployeeOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/employerbenefits.py b/src/panora_sdk/employerbenefits.py deleted file mode 100644 index 2f2c28c..0000000 --- a/src/panora_sdk/employerbenefits.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Employerbenefits(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmployerBenefitsResponse: - r"""List Employer Benefits - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmployerBenefitsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employerbenefits", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisEmployerBenefits", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmployerBenefitsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmployerBenefitsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmployerBenefitsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmployerBenefitsResponse: - r"""List Employer Benefits - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmployerBenefitsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employerbenefits", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisEmployerBenefits", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmployerBenefitsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmployerBenefitsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmployerBenefitsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployerbenefitOutput]: - r"""Retrieve Employer Benefit - - Retrieve an Employer Benefit from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employer benefit you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmployerBenefitRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employerbenefits/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisEmployerBenefit", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployerbenefitOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmployerbenefitOutput]: - r"""Retrieve Employer Benefit - - Retrieve an Employer Benefit from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employer benefit you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmployerBenefitRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employerbenefits/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisEmployerBenefit", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmployerbenefitOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/employments.py b/src/panora_sdk/employments.py deleted file mode 100644 index 67cef34..0000000 --- a/src/panora_sdk/employments.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Employments(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmploymentsResponse: - r"""List Employments - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmploymentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisEmployments", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmploymentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmploymentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmploymentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisEmploymentsResponse: - r"""List Employments - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisEmploymentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/employments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisEmployments", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisEmploymentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisEmploymentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisEmploymentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmploymentOutput]: - r"""Retrieve Employment - - Retrieve an Employment from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employment you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmploymentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employments/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisEmployment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmploymentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisEmploymentOutput]: - r"""Retrieve Employment - - Retrieve an Employment from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the employment you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisEmploymentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/employments/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisEmployment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisEmploymentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/engagements.py b/src/panora_sdk/engagements.py index d94e7ef..c35d4df 100644 --- a/src/panora_sdk/engagements.py +++ b/src/panora_sdk/engagements.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Engagements(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmEngagementsResponse: + ) -> Optional[models.ListCrmEngagementsResponse]: r"""List Engagements :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmEngagementsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/engagements", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmEngagements", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmEngagements", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmEngagementsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmEngagementsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmEngagementsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmEngagementsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmEngagementsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmEngagementsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmEngagementsResponse: + ) -> Optional[models.ListCrmEngagementsResponse]: r"""List Engagements :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmEngagementsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/engagements", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmEngagements", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmEngagements", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmEngagementsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,36 @@ def next_func() -> Optional[models.ListCrmEngagementsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmEngagementsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmEngagementsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmEngagementsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmEngagementsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_crm_engagement_input: Union[models.UnifiedCrmEngagementInput, models.UnifiedCrmEngagementInputTypedDict], + unified_crm_engagement_input: Union[ + models.UnifiedCrmEngagementInput, models.UnifiedCrmEngagementInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +242,7 @@ def create( Create Engagements in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_engagement_input: + :param unified_crm_engagement_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +252,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmEngagementRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_engagement_input=utils.get_pydantic_model(unified_crm_engagement_input, models.UnifiedCrmEngagementInput), + unified_crm_engagement_input=utils.get_pydantic_model( + unified_crm_engagement_input, models.UnifiedCrmEngagementInput + ), ) - + req = self.build_request( method="POST", path="/crm/engagements", @@ -251,45 +276,61 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_engagement_input, False, False, "json", models.UnifiedCrmEngagementInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_engagement_input, + False, + False, + "json", + models.UnifiedCrmEngagementInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createCrmEngagement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmEngagement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmEngagementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmEngagementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_crm_engagement_input: Union[models.UnifiedCrmEngagementInput, models.UnifiedCrmEngagementInputTypedDict], + unified_crm_engagement_input: Union[ + models.UnifiedCrmEngagementInput, models.UnifiedCrmEngagementInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +341,7 @@ async def create_async( Create Engagements in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_engagement_input: + :param unified_crm_engagement_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +351,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmEngagementRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_engagement_input=utils.get_pydantic_model(unified_crm_engagement_input, models.UnifiedCrmEngagementInput), + unified_crm_engagement_input=utils.get_pydantic_model( + unified_crm_engagement_input, models.UnifiedCrmEngagementInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/crm/engagements", base_url=base_url, @@ -332,43 +375,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_engagement_input, False, False, "json", models.UnifiedCrmEngagementInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_engagement_input, + False, + False, + "json", + models.UnifiedCrmEngagementInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createCrmEngagement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmEngagement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmEngagementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmEngagementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +448,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmEngagementRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/engagements/{id}", @@ -415,40 +472,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmEngagement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmEngagement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmEngagementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmEngagementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +536,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmEngagementRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/engagements/{id}", base_url=base_url, @@ -495,34 +560,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmEngagement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmEngagement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmEngagementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmEngagementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/events.py b/src/panora_sdk/events.py index 92135ec..1c9bff8 100644 --- a/src/panora_sdk/events.py +++ b/src/panora_sdk/events.py @@ -1,27 +1,26 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import List, Optional + class Events(BaseSDK): - - def get_panora_core_events( - self, *, - page: Optional[float] = 1, - limit: Optional[float] = 10, + self, + *, + page: Optional[float] = None, + limit: Optional[float] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, ) -> Optional[List[models.EventResponse]]: r"""List Events - :param page: - :param limit: + :param page: + :param limit: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -30,15 +29,15 @@ def get_panora_core_events( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.GetPanoraCoreEventsRequest( page=page, limit=limit, ) - + req = self.build_request( method="GET", path="/events", @@ -53,50 +52,58 @@ def get_panora_core_events( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="getPanoraCoreEvents", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getPanoraCoreEvents", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.EventResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.EventResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def get_panora_core_events_async( - self, *, - page: Optional[float] = 1, - limit: Optional[float] = 10, + self, + *, + page: Optional[float] = None, + limit: Optional[float] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, ) -> Optional[List[models.EventResponse]]: r"""List Events - :param page: - :param limit: + :param page: + :param limit: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -105,16 +112,16 @@ async def get_panora_core_events_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.GetPanoraCoreEventsRequest( page=page, limit=limit, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/events", base_url=base_url, @@ -128,34 +135,41 @@ async def get_panora_core_events_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="getPanoraCoreEvents", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getPanoraCoreEvents", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.EventResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[List[models.EventResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/expenses.py b/src/panora_sdk/expenses.py index 6f827cd..3c843d3 100644 --- a/src/panora_sdk/expenses.py +++ b/src/panora_sdk/expenses.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Expenses(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingExpenseResponse: + ) -> Optional[models.ListAccountingExpenseResponse]: r"""List Expenses :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingExpenseRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/expenses", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingExpense", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingExpense", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingExpenseResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingExpenseResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingExpenseResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingExpenseResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingExpenseResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingExpenseResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingExpenseResponse: + ) -> Optional[models.ListAccountingExpenseResponse]: r"""List Expenses :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingExpenseRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/expenses", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingExpense", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingExpense", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingExpenseResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListAccountingExpenseResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingExpenseResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingExpenseResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingExpenseResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingExpenseResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_expense_input: Union[models.UnifiedAccountingExpenseInput, models.UnifiedAccountingExpenseInputTypedDict], + unified_accounting_expense_input: Union[ + models.UnifiedAccountingExpenseInput, + models.UnifiedAccountingExpenseInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Expenses in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_expense_input: + :param unified_accounting_expense_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingExpenseRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_expense_input=utils.get_pydantic_model(unified_accounting_expense_input, models.UnifiedAccountingExpenseInput), + unified_accounting_expense_input=utils.get_pydantic_model( + unified_accounting_expense_input, models.UnifiedAccountingExpenseInput + ), ) - + req = self.build_request( method="POST", path="/accounting/expenses", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_expense_input, False, False, "json", models.UnifiedAccountingExpenseInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_expense_input, + False, + False, + "json", + models.UnifiedAccountingExpenseInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingExpense", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingExpense", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingExpenseOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingExpenseOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_expense_input: Union[models.UnifiedAccountingExpenseInput, models.UnifiedAccountingExpenseInputTypedDict], + unified_accounting_expense_input: Union[ + models.UnifiedAccountingExpenseInput, + models.UnifiedAccountingExpenseInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Expenses in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_expense_input: + :param unified_accounting_expense_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingExpenseRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_expense_input=utils.get_pydantic_model(unified_accounting_expense_input, models.UnifiedAccountingExpenseInput), + unified_accounting_expense_input=utils.get_pydantic_model( + unified_accounting_expense_input, models.UnifiedAccountingExpenseInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/accounting/expenses", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_expense_input, False, False, "json", models.UnifiedAccountingExpenseInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_expense_input, + False, + False, + "json", + models.UnifiedAccountingExpenseInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingExpense", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingExpense", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingExpenseOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingExpenseOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingExpenseRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/expenses/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingExpense", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingExpense", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingExpenseOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingExpenseOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingExpenseRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/expenses/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingExpense", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingExpense", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingExpenseOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingExpenseOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/fieldmappings.py b/src/panora_sdk/fieldmappings.py index f117802..c5c1555 100644 --- a/src/panora_sdk/fieldmappings.py +++ b/src/panora_sdk/fieldmappings.py @@ -1,17 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import BaseModel, OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Optional, Union, cast + class FieldMappings(BaseSDK): - - def get_field_mapping_values( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -26,7 +25,7 @@ def get_field_mapping_values( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -43,40 +42,46 @@ def get_field_mapping_values( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="getFieldMappingValues", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getFieldMappingValues", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def get_field_mapping_values_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -91,10 +96,10 @@ async def get_field_mapping_values_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/field_mappings/values", base_url=base_url, @@ -108,40 +113,46 @@ async def get_field_mapping_values_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="getFieldMappingValues", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getFieldMappingValues", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def get_field_mappings_entities( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -156,7 +167,7 @@ def get_field_mappings_entities( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -173,40 +184,46 @@ def get_field_mappings_entities( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="getFieldMappingsEntities", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getFieldMappingsEntities", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def get_field_mappings_entities_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -221,10 +238,10 @@ async def get_field_mappings_entities_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/field_mappings/entities", base_url=base_url, @@ -238,40 +255,46 @@ async def get_field_mappings_entities_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="getFieldMappingsEntities", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getFieldMappingsEntities", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def get_field_mappings( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -286,7 +309,7 @@ def get_field_mappings( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -303,40 +326,46 @@ def get_field_mappings( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="getFieldMappings", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getFieldMappings", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def get_field_mappings_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -351,10 +380,10 @@ async def get_field_mappings_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/field_mappings/attributes", base_url=base_url, @@ -368,41 +397,49 @@ async def get_field_mappings_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="getFieldMappings", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getFieldMappings", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def definitions( - self, *, - request: Union[models.DefineTargetFieldDto, models.DefineTargetFieldDtoTypedDict], + self, + *, + request: Union[ + models.DefineTargetFieldDto, models.DefineTargetFieldDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -418,14 +455,14 @@ def definitions( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.DefineTargetFieldDto) request = cast(models.DefineTargetFieldDto, request) - + req = self.build_request( method="POST", path="/field_mappings/define", @@ -438,44 +475,56 @@ def definitions( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.DefineTargetFieldDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.DefineTargetFieldDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="definitions", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="definitions", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.CustomFieldResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.CustomFieldResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def definitions_async( - self, *, - request: Union[models.DefineTargetFieldDto, models.DefineTargetFieldDtoTypedDict], + self, + *, + request: Union[ + models.DefineTargetFieldDto, models.DefineTargetFieldDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -491,15 +540,15 @@ async def definitions_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.DefineTargetFieldDto) request = cast(models.DefineTargetFieldDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/field_mappings/define", base_url=base_url, @@ -511,44 +560,56 @@ async def definitions_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.DefineTargetFieldDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.DefineTargetFieldDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="definitions", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="definitions", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.CustomFieldResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.CustomFieldResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def define_custom_field( - self, *, - request: Union[models.CustomFieldCreateDto, models.CustomFieldCreateDtoTypedDict], + self, + *, + request: Union[ + models.CustomFieldCreateDto, models.CustomFieldCreateDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -564,14 +625,14 @@ def define_custom_field( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CustomFieldCreateDto) request = cast(models.CustomFieldCreateDto, request) - + req = self.build_request( method="POST", path="/field_mappings", @@ -584,44 +645,56 @@ def define_custom_field( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CustomFieldCreateDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CustomFieldCreateDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="defineCustomField", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="defineCustomField", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.CustomFieldResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.CustomFieldResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def define_custom_field_async( - self, *, - request: Union[models.CustomFieldCreateDto, models.CustomFieldCreateDtoTypedDict], + self, + *, + request: Union[ + models.CustomFieldCreateDto, models.CustomFieldCreateDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -637,15 +710,15 @@ async def define_custom_field_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CustomFieldCreateDto) request = cast(models.CustomFieldCreateDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/field_mappings", base_url=base_url, @@ -657,44 +730,56 @@ async def define_custom_field_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CustomFieldCreateDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CustomFieldCreateDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="defineCustomField", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="defineCustomField", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.CustomFieldResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.CustomFieldResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def map( - self, *, - request: Union[models.MapFieldToProviderDto, models.MapFieldToProviderDtoTypedDict], + self, + *, + request: Union[ + models.MapFieldToProviderDto, models.MapFieldToProviderDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -710,14 +795,14 @@ def map( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.MapFieldToProviderDto) request = cast(models.MapFieldToProviderDto, request) - + req = self.build_request( method="POST", path="/field_mappings/map", @@ -730,44 +815,56 @@ def map( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.MapFieldToProviderDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.MapFieldToProviderDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="map", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="map", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.CustomFieldResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.CustomFieldResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def map_async( - self, *, - request: Union[models.MapFieldToProviderDto, models.MapFieldToProviderDtoTypedDict], + self, + *, + request: Union[ + models.MapFieldToProviderDto, models.MapFieldToProviderDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -783,15 +880,15 @@ async def map_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.MapFieldToProviderDto) request = cast(models.MapFieldToProviderDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/field_mappings/map", base_url=base_url, @@ -803,37 +900,46 @@ async def map_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.MapFieldToProviderDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.MapFieldToProviderDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="map", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="map", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.CustomFieldResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.CustomFieldResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/files.py b/src/panora_sdk/files.py index 7e5aa51..7879130 100644 --- a/src/panora_sdk/files.py +++ b/src/panora_sdk/files.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Files(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageFileResponse: + ) -> Optional[models.ListFilestorageFileResponse]: r"""List Files :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListFilestorageFileRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/filestorage/files", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listFilestorageFile", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageFile", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListFilestorageFileResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListFilestorageFileResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageFileResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageFileResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageFileResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageFileResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageFileResponse: + ) -> Optional[models.ListFilestorageFileResponse]: r"""List Files :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListFilestorageFileRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/filestorage/files", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listFilestorageFile", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageFile", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListFilestorageFileResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListFilestorageFileResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageFileResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageFileResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageFileResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageFileResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_filestorage_file_input: Union[models.UnifiedFilestorageFileInput, models.UnifiedFilestorageFileInputTypedDict], + unified_filestorage_file_input: Union[ + models.UnifiedFilestorageFileInput, + models.UnifiedFilestorageFileInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Files in any supported Filestorage software :param x_connection_token: The connection token - :param unified_filestorage_file_input: + :param unified_filestorage_file_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateFilestorageFileRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_filestorage_file_input=utils.get_pydantic_model(unified_filestorage_file_input, models.UnifiedFilestorageFileInput), + unified_filestorage_file_input=utils.get_pydantic_model( + unified_filestorage_file_input, models.UnifiedFilestorageFileInput + ), ) - + req = self.build_request( method="POST", path="/filestorage/files", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_filestorage_file_input, False, False, "json", models.UnifiedFilestorageFileInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_filestorage_file_input, + False, + False, + "json", + models.UnifiedFilestorageFileInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createFilestorageFile", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createFilestorageFile", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFileOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFileOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_filestorage_file_input: Union[models.UnifiedFilestorageFileInput, models.UnifiedFilestorageFileInputTypedDict], + unified_filestorage_file_input: Union[ + models.UnifiedFilestorageFileInput, + models.UnifiedFilestorageFileInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Files in any supported Filestorage software :param x_connection_token: The connection token - :param unified_filestorage_file_input: + :param unified_filestorage_file_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateFilestorageFileRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_filestorage_file_input=utils.get_pydantic_model(unified_filestorage_file_input, models.UnifiedFilestorageFileInput), + unified_filestorage_file_input=utils.get_pydantic_model( + unified_filestorage_file_input, models.UnifiedFilestorageFileInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/filestorage/files", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_filestorage_file_input, False, False, "json", models.UnifiedFilestorageFileInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_filestorage_file_input, + False, + False, + "json", + models.UnifiedFilestorageFileInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createFilestorageFile", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createFilestorageFile", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFileOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFileOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveFilestorageFileRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/filestorage/files/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveFilestorageFile", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageFile", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFileOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFileOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveFilestorageFileRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/filestorage/files/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveFilestorageFile", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageFile", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFileOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFileOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/filestorage.py b/src/panora_sdk/filestorage.py index 9398528..4757f0d 100644 --- a/src/panora_sdk/filestorage.py +++ b/src/panora_sdk/filestorage.py @@ -4,22 +4,23 @@ from .sdkconfiguration import SDKConfiguration from panora_sdk.files import Files from panora_sdk.folders import Folders +from panora_sdk.groups import Groups from panora_sdk.panora_filestorage_users import PanoraFilestorageUsers -from panora_sdk.panora_groups import PanoraGroups + class Filestorage(BaseSDK): files: Files folders: Folders - groups: PanoraGroups + groups: Groups users: PanoraFilestorageUsers + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.files = Files(self.sdk_configuration) self.folders = Folders(self.sdk_configuration) - self.groups = PanoraGroups(self.sdk_configuration) + self.groups = Groups(self.sdk_configuration) self.users = PanoraFilestorageUsers(self.sdk_configuration) - diff --git a/src/panora_sdk/folders.py b/src/panora_sdk/folders.py index 4263ba2..412ae84 100644 --- a/src/panora_sdk/folders.py +++ b/src/panora_sdk/folders.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Folders(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageFolderResponse: + ) -> Optional[models.ListFilestorageFolderResponse]: r"""List Folders :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListFilestorageFolderRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/filestorage/folders", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listFilestorageFolder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageFolder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListFilestorageFolderResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListFilestorageFolderResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageFolderResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageFolderResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageFolderResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageFolderResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageFolderResponse: + ) -> Optional[models.ListFilestorageFolderResponse]: r"""List Folders :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListFilestorageFolderRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/filestorage/folders", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listFilestorageFolder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageFolder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListFilestorageFolderResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListFilestorageFolderResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageFolderResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageFolderResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageFolderResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageFolderResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_filestorage_folder_input: Union[models.UnifiedFilestorageFolderInput, models.UnifiedFilestorageFolderInputTypedDict], + unified_filestorage_folder_input: Union[ + models.UnifiedFilestorageFolderInput, + models.UnifiedFilestorageFolderInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Folders in any supported Filestorage software :param x_connection_token: The connection token - :param unified_filestorage_folder_input: + :param unified_filestorage_folder_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateFilestorageFolderRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_filestorage_folder_input=utils.get_pydantic_model(unified_filestorage_folder_input, models.UnifiedFilestorageFolderInput), + unified_filestorage_folder_input=utils.get_pydantic_model( + unified_filestorage_folder_input, models.UnifiedFilestorageFolderInput + ), ) - + req = self.build_request( method="POST", path="/filestorage/folders", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_filestorage_folder_input, False, False, "json", models.UnifiedFilestorageFolderInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_filestorage_folder_input, + False, + False, + "json", + models.UnifiedFilestorageFolderInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createFilestorageFolder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createFilestorageFolder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFolderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFolderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_filestorage_folder_input: Union[models.UnifiedFilestorageFolderInput, models.UnifiedFilestorageFolderInputTypedDict], + unified_filestorage_folder_input: Union[ + models.UnifiedFilestorageFolderInput, + models.UnifiedFilestorageFolderInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Folders in any supported Filestorage software :param x_connection_token: The connection token - :param unified_filestorage_folder_input: + :param unified_filestorage_folder_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateFilestorageFolderRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_filestorage_folder_input=utils.get_pydantic_model(unified_filestorage_folder_input, models.UnifiedFilestorageFolderInput), + unified_filestorage_folder_input=utils.get_pydantic_model( + unified_filestorage_folder_input, models.UnifiedFilestorageFolderInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/filestorage/folders", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_filestorage_folder_input, False, False, "json", models.UnifiedFilestorageFolderInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_filestorage_folder_input, + False, + False, + "json", + models.UnifiedFilestorageFolderInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createFilestorageFolder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createFilestorageFolder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFolderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFolderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveFilestorageFolderRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/filestorage/folders/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveFilestorageFolder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageFolder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFolderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFolderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveFilestorageFolderRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/filestorage/folders/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveFilestorageFolder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageFolder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageFolderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageFolderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/fulfillments.py b/src/panora_sdk/fulfillments.py index 8eced21..438e662 100644 --- a/src/panora_sdk/fulfillments.py +++ b/src/panora_sdk/fulfillments.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Fulfillments(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceFulfillmentsResponse: + ) -> Optional[models.ListEcommerceFulfillmentsResponse]: r"""List Fulfillments :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceFulfillmentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ecommerce/fulfillments", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listEcommerceFulfillments", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceFulfillments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceFulfillmentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListEcommerceFulfillmentsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceFulfillmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceFulfillmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceFulfillmentsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListEcommerceFulfillmentsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceFulfillmentsResponse: + ) -> Optional[models.ListEcommerceFulfillmentsResponse]: r"""List Fulfillments :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceFulfillmentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/fulfillments", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listEcommerceFulfillments", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceFulfillments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceFulfillmentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListEcommerceFulfillmentsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceFulfillmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceFulfillmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceFulfillmentsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListEcommerceFulfillmentsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceFulfillmentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ecommerce/fulfillments/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveEcommerceFulfillment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceFulfillment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceFulfillmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceFulfillmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceFulfillmentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/fulfillments/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveEcommerceFulfillment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceFulfillment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceFulfillmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceFulfillmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/groups.py b/src/panora_sdk/groups.py index 7b7006f..5ce5ff6 100644 --- a/src/panora_sdk/groups.py +++ b/src/panora_sdk/groups.py @@ -2,26 +2,25 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Groups(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListHrisGroupsResponse: - r"""List Groups + ) -> Optional[models.ListFilestorageGroupResponse]: + r"""List Groups :param x_connection_token: The connection token :param remote_data: Set to true to include data from the original software. @@ -35,20 +34,20 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.ListHrisGroupsRequest( + + request = models.ListFilestorageGroupRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", - path="/hris/groups", + path="/filestorage/groups", base_url=base_url, url_variables=url_variables, request=request, @@ -60,29 +59,27 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisGroups", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageGroup", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - def next_func() -> Optional[models.ListHrisGroupsResponse]: + + def next_func() -> Optional[models.ListFilestorageGroupResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,28 +94,41 @@ def next_func() -> Optional[models.ListHrisGroupsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisGroupsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisGroupsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageGroupResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageGroupResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListHrisGroupsResponse: - r"""List Groups + ) -> Optional[models.ListFilestorageGroupResponse]: + r"""List Groups :param x_connection_token: The connection token :param remote_data: Set to true to include data from the original software. @@ -132,20 +142,20 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.ListHrisGroupsRequest( + + request = models.ListFilestorageGroupRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", - path="/hris/groups", + path="/filestorage/groups", base_url=base_url, url_variables=url_variables, request=request, @@ -157,29 +167,27 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisGroups", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageGroup", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - def next_func() -> Optional[models.ListHrisGroupsResponse]: + + def next_func() -> Optional[models.ListFilestorageGroupResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,33 +202,46 @@ def next_func() -> Optional[models.ListHrisGroupsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisGroupsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisGroupsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageGroupResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageGroupResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisGroupOutput]: - r"""Retrieve Group + ) -> Optional[models.UnifiedFilestorageGroupOutput]: + r"""Retrieve Groups - Retrieve a Group from any connected Hris software + Retrieve Groups from any connected Filestorage software :param x_connection_token: The connection token - :param id: id of the group you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. + :param id: id of the permission you want to retrieve. + :param remote_data: Set to true to include data from the original File Storage software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -229,19 +250,19 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.RetrieveHrisGroupRequest( + + request = models.RetrieveFilestorageGroupRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", - path="/hris/groups/{id}", + path="/filestorage/groups/{id}", base_url=base_url, url_variables=url_variables, request=request, @@ -253,54 +274,62 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisGroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageGroup", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisGroupOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageGroupOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisGroupOutput]: - r"""Retrieve Group + ) -> Optional[models.UnifiedFilestorageGroupOutput]: + r"""Retrieve Groups - Retrieve a Group from any connected Hris software + Retrieve Groups from any connected Filestorage software :param x_connection_token: The connection token - :param id: id of the group you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. + :param id: id of the permission you want to retrieve. + :param remote_data: Set to true to include data from the original File Storage software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -309,19 +338,19 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.RetrieveHrisGroupRequest( + + request = models.RetrieveFilestorageGroupRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", - path="/hris/groups/{id}", + path="/filestorage/groups/{id}", base_url=base_url, url_variables=url_variables, request=request, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisGroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageGroup", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisGroupOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageGroupOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/hris.py b/src/panora_sdk/hris.py deleted file mode 100644 index 3e1d937..0000000 --- a/src/panora_sdk/hris.py +++ /dev/null @@ -1,58 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from .sdkconfiguration import SDKConfiguration -from panora_sdk.bankinfos import Bankinfos -from panora_sdk.benefits import Benefits -from panora_sdk.dependents import Dependents -from panora_sdk.employeepayrollruns import Employeepayrollruns -from panora_sdk.employees import Employees -from panora_sdk.employerbenefits import Employerbenefits -from panora_sdk.employments import Employments -from panora_sdk.groups import Groups -from panora_sdk.locations import Locations -from panora_sdk.panora_companies import PanoraCompanies -from panora_sdk.paygroups import Paygroups -from panora_sdk.payrollruns import Payrollruns -from panora_sdk.timeoffbalances import Timeoffbalances -from panora_sdk.timeoffs import Timeoffs -from panora_sdk.timesheetentries import Timesheetentries - -class Hris(BaseSDK): - bankinfos: Bankinfos - benefits: Benefits - companies: PanoraCompanies - dependents: Dependents - employeepayrollruns: Employeepayrollruns - employees: Employees - employerbenefits: Employerbenefits - employments: Employments - groups: Groups - locations: Locations - paygroups: Paygroups - payrollruns: Payrollruns - timeoffs: Timeoffs - timeoffbalances: Timeoffbalances - timesheetentries: Timesheetentries - def __init__(self, sdk_config: SDKConfiguration) -> None: - BaseSDK.__init__(self, sdk_config) - self.sdk_configuration = sdk_config - self._init_sdks() - - def _init_sdks(self): - self.bankinfos = Bankinfos(self.sdk_configuration) - self.benefits = Benefits(self.sdk_configuration) - self.companies = PanoraCompanies(self.sdk_configuration) - self.dependents = Dependents(self.sdk_configuration) - self.employeepayrollruns = Employeepayrollruns(self.sdk_configuration) - self.employees = Employees(self.sdk_configuration) - self.employerbenefits = Employerbenefits(self.sdk_configuration) - self.employments = Employments(self.sdk_configuration) - self.groups = Groups(self.sdk_configuration) - self.locations = Locations(self.sdk_configuration) - self.paygroups = Paygroups(self.sdk_configuration) - self.payrollruns = Payrollruns(self.sdk_configuration) - self.timeoffs = Timeoffs(self.sdk_configuration) - self.timeoffbalances = Timeoffbalances(self.sdk_configuration) - self.timesheetentries = Timesheetentries(self.sdk_configuration) - diff --git a/src/panora_sdk/incomestatements.py b/src/panora_sdk/incomestatements.py index 3727066..6c7048e 100644 --- a/src/panora_sdk/incomestatements.py +++ b/src/panora_sdk/incomestatements.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Incomestatements(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingIncomeStatementResponse: + ) -> Optional[models.ListAccountingIncomeStatementResponse]: r"""List IncomeStatements :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingIncomeStatementRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/incomestatements", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingIncomeStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingIncomeStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingIncomeStatementResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingIncomeStatementResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingIncomeStatementResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingIncomeStatementResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingIncomeStatementResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingIncomeStatementResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingIncomeStatementResponse: + ) -> Optional[models.ListAccountingIncomeStatementResponse]: r"""List IncomeStatements :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingIncomeStatementRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/incomestatements", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingIncomeStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingIncomeStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingIncomeStatementResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingIncomeStatementResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingIncomeStatementResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingIncomeStatementResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingIncomeStatementResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingIncomeStatementResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingIncomeStatementRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/incomestatements/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingIncomeStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingIncomeStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingIncomestatementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingIncomestatementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingIncomeStatementRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/incomestatements/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingIncomeStatement", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingIncomeStatement", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingIncomestatementOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingIncomestatementOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/interviews.py b/src/panora_sdk/interviews.py deleted file mode 100644 index a36c3ea..0000000 --- a/src/panora_sdk/interviews.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class Interviews(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsInterviewResponse: - r"""List Interviews - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsInterviewRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/interviews", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsInterview", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsInterviewResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsInterviewResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsInterviewResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsInterviewResponse: - r"""List Interviews - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsInterviewRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/interviews", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsInterview", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsInterviewResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsInterviewResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsInterviewResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_ats_interview_input: Union[models.UnifiedAtsInterviewInput, models.UnifiedAtsInterviewInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsInterviewOutput]: - r"""Create Interviews - - Create Interviews in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_interview_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsInterviewRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_interview_input=utils.get_pydantic_model(unified_ats_interview_input, models.UnifiedAtsInterviewInput), - ) - - req = self.build_request( - method="POST", - path="/ats/interviews", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_interview_input, False, False, "json", models.UnifiedAtsInterviewInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAtsInterview", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsInterviewOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_ats_interview_input: Union[models.UnifiedAtsInterviewInput, models.UnifiedAtsInterviewInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsInterviewOutput]: - r"""Create Interviews - - Create Interviews in any supported Ats software - - :param x_connection_token: The connection token - :param unified_ats_interview_input: - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateAtsInterviewRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ats_interview_input=utils.get_pydantic_model(unified_ats_interview_input, models.UnifiedAtsInterviewInput), - ) - - req = self.build_request( - method="POST", - path="/ats/interviews", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ats_interview_input, False, False, "json", models.UnifiedAtsInterviewInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAtsInterview", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsInterviewOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsInterviewOutput]: - r"""Retrieve Interviews - - Retrieve Interviews from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the interview you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsInterviewRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/interviews/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsInterview", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsInterviewOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsInterviewOutput]: - r"""Retrieve Interviews - - Retrieve Interviews from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the interview you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsInterviewRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/interviews/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsInterview", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsInterviewOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/invoices.py b/src/panora_sdk/invoices.py index 6e71d57..5fc23be 100644 --- a/src/panora_sdk/invoices.py +++ b/src/panora_sdk/invoices.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Invoices(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingInvoiceResponse: + ) -> Optional[models.ListAccountingInvoiceResponse]: r"""List Invoices :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingInvoiceRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/invoices", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingInvoice", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingInvoice", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingInvoiceResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingInvoiceResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingInvoiceResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingInvoiceResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingInvoiceResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingInvoiceResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingInvoiceResponse: + ) -> Optional[models.ListAccountingInvoiceResponse]: r"""List Invoices :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingInvoiceRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/invoices", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingInvoice", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingInvoice", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingInvoiceResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListAccountingInvoiceResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingInvoiceResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingInvoiceResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingInvoiceResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingInvoiceResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_invoice_input: Union[models.UnifiedAccountingInvoiceInput, models.UnifiedAccountingInvoiceInputTypedDict], + unified_accounting_invoice_input: Union[ + models.UnifiedAccountingInvoiceInput, + models.UnifiedAccountingInvoiceInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create invoices in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_invoice_input: + :param unified_accounting_invoice_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingInvoiceRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_invoice_input=utils.get_pydantic_model(unified_accounting_invoice_input, models.UnifiedAccountingInvoiceInput), + unified_accounting_invoice_input=utils.get_pydantic_model( + unified_accounting_invoice_input, models.UnifiedAccountingInvoiceInput + ), ) - + req = self.build_request( method="POST", path="/accounting/invoices", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_invoice_input, False, False, "json", models.UnifiedAccountingInvoiceInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_invoice_input, + False, + False, + "json", + models.UnifiedAccountingInvoiceInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingInvoice", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingInvoice", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingInvoiceOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingInvoiceOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_invoice_input: Union[models.UnifiedAccountingInvoiceInput, models.UnifiedAccountingInvoiceInputTypedDict], + unified_accounting_invoice_input: Union[ + models.UnifiedAccountingInvoiceInput, + models.UnifiedAccountingInvoiceInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create invoices in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_invoice_input: + :param unified_accounting_invoice_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingInvoiceRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_invoice_input=utils.get_pydantic_model(unified_accounting_invoice_input, models.UnifiedAccountingInvoiceInput), + unified_accounting_invoice_input=utils.get_pydantic_model( + unified_accounting_invoice_input, models.UnifiedAccountingInvoiceInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/accounting/invoices", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_invoice_input, False, False, "json", models.UnifiedAccountingInvoiceInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_invoice_input, + False, + False, + "json", + models.UnifiedAccountingInvoiceInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingInvoice", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingInvoice", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingInvoiceOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingInvoiceOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingInvoiceRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/invoices/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingInvoice", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingInvoice", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingInvoiceOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingInvoiceOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingInvoiceRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/invoices/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingInvoice", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingInvoice", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingInvoiceOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingInvoiceOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/items.py b/src/panora_sdk/items.py index 7368a2a..10f3a54 100644 --- a/src/panora_sdk/items.py +++ b/src/panora_sdk/items.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Items(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingItemResponse: + ) -> Optional[models.ListAccountingItemResponse]: r"""List Items :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingItemRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/items", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingItem", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingItem", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingItemResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingItemResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingItemResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingItemResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingItemResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingItemResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingItemResponse: + ) -> Optional[models.ListAccountingItemResponse]: r"""List Items :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingItemRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/items", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingItem", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingItem", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingItemResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListAccountingItemResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingItemResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingItemResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingItemResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingItemResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingItemRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/items/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingItem", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingItem", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingItemOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingItemOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingItemRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/items/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingItem", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingItem", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingItemOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingItemOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/jobinterviewstages.py b/src/panora_sdk/jobinterviewstages.py deleted file mode 100644 index ae58cd8..0000000 --- a/src/panora_sdk/jobinterviewstages.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Jobinterviewstages(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsJobInterviewStageResponse: - r"""List JobInterviewStages - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsJobInterviewStageRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/jobinterviewstages", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsJobInterviewStage", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsJobInterviewStageResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsJobInterviewStageResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsJobInterviewStageResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsJobInterviewStageResponse: - r"""List JobInterviewStages - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsJobInterviewStageRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/jobinterviewstages", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsJobInterviewStage", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsJobInterviewStageResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsJobInterviewStageResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsJobInterviewStageResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsJobinterviewstageOutput]: - r"""Retrieve Job Interview Stages - - Retrieve Job Interview Stages from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the jobinterviewstage you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsJobInterviewStageRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/jobinterviewstages/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsJobInterviewStage", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsJobinterviewstageOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsJobinterviewstageOutput]: - r"""Retrieve Job Interview Stages - - Retrieve Job Interview Stages from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the jobinterviewstage you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsJobInterviewStageRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/jobinterviewstages/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsJobInterviewStage", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsJobinterviewstageOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/jobs.py b/src/panora_sdk/jobs.py deleted file mode 100644 index 04cf04f..0000000 --- a/src/panora_sdk/jobs.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Jobs(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsJobResponse: - r"""List Jobs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsJobRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/jobs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsJob", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsJobResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsJobResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsJobResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsJobResponse: - r"""List Jobs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsJobRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/jobs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsJob", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsJobResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsJobResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsJobResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsJobOutput]: - r"""Retrieve Jobs - - Retrieve Jobs from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the job you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsJobRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/jobs/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsJob", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsJobOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsJobOutput]: - r"""Retrieve Jobs - - Retrieve Jobs from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the job you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsJobRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/jobs/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsJob", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsJobOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/journalentries.py b/src/panora_sdk/journalentries.py index 730eeb3..f747786 100644 --- a/src/panora_sdk/journalentries.py +++ b/src/panora_sdk/journalentries.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Journalentries(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingJournalEntryResponse: + ) -> Optional[models.ListAccountingJournalEntryResponse]: r"""List JournalEntrys :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingJournalEntryRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/journalentries", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingJournalEntry", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingJournalEntry", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingJournalEntryResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingJournalEntryResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingJournalEntryResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingJournalEntryResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingJournalEntryResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingJournalEntryResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingJournalEntryResponse: + ) -> Optional[models.ListAccountingJournalEntryResponse]: r"""List JournalEntrys :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingJournalEntryRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/journalentries", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingJournalEntry", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingJournalEntry", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingJournalEntryResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListAccountingJournalEntryResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingJournalEntryResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingJournalEntryResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingJournalEntryResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingJournalEntryResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_journalentry_input: Union[models.UnifiedAccountingJournalentryInput, models.UnifiedAccountingJournalentryInputTypedDict], + unified_accounting_journalentry_input: Union[ + models.UnifiedAccountingJournalentryInput, + models.UnifiedAccountingJournalentryInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create Journal Entries in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_journalentry_input: + :param unified_accounting_journalentry_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingJournalEntryRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_journalentry_input=utils.get_pydantic_model(unified_accounting_journalentry_input, models.UnifiedAccountingJournalentryInput), + unified_accounting_journalentry_input=utils.get_pydantic_model( + unified_accounting_journalentry_input, + models.UnifiedAccountingJournalentryInput, + ), ) - + req = self.build_request( method="POST", path="/accounting/journalentries", @@ -251,45 +280,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_journalentry_input, False, False, "json", models.UnifiedAccountingJournalentryInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_journalentry_input, + False, + False, + "json", + models.UnifiedAccountingJournalentryInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingJournalEntry", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingJournalEntry", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingJournalentryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingJournalentryOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_journalentry_input: Union[models.UnifiedAccountingJournalentryInput, models.UnifiedAccountingJournalentryInputTypedDict], + unified_accounting_journalentry_input: Union[ + models.UnifiedAccountingJournalentryInput, + models.UnifiedAccountingJournalentryInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +346,7 @@ async def create_async( Create Journal Entries in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_journalentry_input: + :param unified_accounting_journalentry_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +356,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingJournalEntryRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_journalentry_input=utils.get_pydantic_model(unified_accounting_journalentry_input, models.UnifiedAccountingJournalentryInput), + unified_accounting_journalentry_input=utils.get_pydantic_model( + unified_accounting_journalentry_input, + models.UnifiedAccountingJournalentryInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/accounting/journalentries", base_url=base_url, @@ -332,43 +381,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_journalentry_input, False, False, "json", models.UnifiedAccountingJournalentryInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_journalentry_input, + False, + False, + "json", + models.UnifiedAccountingJournalentryInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingJournalEntry", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingJournalEntry", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingJournalentryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingJournalentryOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +454,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingJournalEntryRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/journalentries/{id}", @@ -415,40 +478,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingJournalEntry", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingJournalEntry", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingJournalentryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingJournalentryOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +542,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingJournalEntryRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/journalentries/{id}", base_url=base_url, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingJournalEntry", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingJournalEntry", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingJournalentryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingJournalentryOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/linkedusers.py b/src/panora_sdk/linkedusers.py index 4058949..bf544a5 100644 --- a/src/panora_sdk/linkedusers.py +++ b/src/panora_sdk/linkedusers.py @@ -1,17 +1,176 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import BaseModel, OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import List, Optional, Union, cast + class LinkedUsers(BaseSDK): - - + def remote_id( + self, + *, + remote_id: str, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + ) -> Optional[models.LinkedUserResponse]: + r"""Retrieve a Linked User From A Remote Id + + :param remote_id: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if server_url is not None: + base_url = server_url + + request = models.RemoteIDRequest( + remote_id=remote_id, + ) + + req = self.build_request( + method="GET", + path="/linked_users/fromRemoteId", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=False, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="application/json", + security=self.sdk_configuration.security, + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = self.do_request( + hook_ctx=HookContext( + operation_id="remoteId", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), + request=req, + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, + ) + + if utils.match_response(http_res, "200", "application/json"): + return utils.unmarshal_json( + http_res.text, Optional[models.LinkedUserResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + + content_type = http_res.headers.get("Content-Type") + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) + + async def remote_id_async( + self, + *, + remote_id: str, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + ) -> Optional[models.LinkedUserResponse]: + r"""Retrieve a Linked User From A Remote Id + + :param remote_id: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if server_url is not None: + base_url = server_url + + request = models.RemoteIDRequest( + remote_id=remote_id, + ) + + req = self.build_request_async( + method="GET", + path="/linked_users/fromRemoteId", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=False, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="application/json", + security=self.sdk_configuration.security, + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = await self.do_request_async( + hook_ctx=HookContext( + operation_id="remoteId", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), + request=req, + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, + ) + + if utils.match_response(http_res, "200", "application/json"): + return utils.unmarshal_json( + http_res.text, Optional[models.LinkedUserResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) + def create( - self, *, + self, + *, request: Union[models.CreateLinkedUserDto, models.CreateLinkedUserDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -28,14 +187,14 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CreateLinkedUserDto) request = cast(models.CreateLinkedUserDto, request) - + req = self.build_request( method="POST", path="/linked_users", @@ -48,43 +207,53 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CreateLinkedUserDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateLinkedUserDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createLinkedUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createLinkedUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.LinkedUserResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.LinkedUserResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, request: Union[models.CreateLinkedUserDto, models.CreateLinkedUserDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -101,15 +270,15 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CreateLinkedUserDto) request = cast(models.CreateLinkedUserDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/linked_users", base_url=base_url, @@ -121,43 +290,53 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CreateLinkedUserDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateLinkedUserDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createLinkedUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createLinkedUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.LinkedUserResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.LinkedUserResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def list( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -172,7 +351,7 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -189,40 +368,48 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listLinkedUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listLinkedUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.LinkedUserResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.LinkedUserResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -237,10 +424,10 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/linked_users", base_url=base_url, @@ -254,41 +441,51 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listLinkedUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listLinkedUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.LinkedUserResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.LinkedUserResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def import_batch( - self, *, - request: Union[models.CreateBatchLinkedUserDto, models.CreateBatchLinkedUserDtoTypedDict], + self, + *, + request: Union[ + models.CreateBatchLinkedUserDto, models.CreateBatchLinkedUserDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -304,14 +501,14 @@ def import_batch( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CreateBatchLinkedUserDto) request = cast(models.CreateBatchLinkedUserDto, request) - + req = self.build_request( method="POST", path="/linked_users/batch", @@ -324,44 +521,56 @@ def import_batch( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CreateBatchLinkedUserDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateBatchLinkedUserDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="importBatch", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="importBatch", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.LinkedUserResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.LinkedUserResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def import_batch_async( - self, *, - request: Union[models.CreateBatchLinkedUserDto, models.CreateBatchLinkedUserDtoTypedDict], + self, + *, + request: Union[ + models.CreateBatchLinkedUserDto, models.CreateBatchLinkedUserDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -377,15 +586,15 @@ async def import_batch_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CreateBatchLinkedUserDto) request = cast(models.CreateBatchLinkedUserDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/linked_users/batch", base_url=base_url, @@ -397,43 +606,53 @@ async def import_batch_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CreateBatchLinkedUserDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateBatchLinkedUserDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="importBatch", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="importBatch", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.LinkedUserResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.LinkedUserResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -441,7 +660,7 @@ def retrieve( ) -> Optional[models.LinkedUserResponse]: r"""Retrieve Linked Users - :param id: + :param id: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -450,14 +669,14 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveLinkedUserRequest( id=id, ) - + req = self.build_request( method="GET", path="/linked_users/{id}", @@ -472,40 +691,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveLinkedUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveLinkedUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.LinkedUserResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.LinkedUserResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -513,7 +740,7 @@ async def retrieve_async( ) -> Optional[models.LinkedUserResponse]: r"""Retrieve Linked Users - :param id: + :param id: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -522,15 +749,15 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveLinkedUserRequest( id=id, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/linked_users/{id}", base_url=base_url, @@ -544,178 +771,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveLinkedUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.LinkedUserResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def remote_id( - self, *, - remote_id: str, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.LinkedUserResponse]: - r"""Retrieve a Linked User From A Remote Id - - :param remote_id: - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RemoteIDRequest( - remote_id=remote_id, - ) - - req = self.build_request( - method="GET", - path="/linked_users/fromRemoteId", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="remoteId", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.LinkedUserResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def remote_id_async( - self, *, - remote_id: str, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.LinkedUserResponse]: - r"""Retrieve a Linked User From A Remote Id - - :param remote_id: - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RemoteIDRequest( - remote_id=remote_id, - ) - - req = self.build_request( - method="GET", - path="/linked_users/fromRemoteId", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config + retry_config = (retries, ["429", "500", "502", "503", "504"]) - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="remoteId", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveLinkedUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.LinkedUserResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.LinkedUserResponse] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/lists.py b/src/panora_sdk/lists.py index 30c3738..57e74c4 100644 --- a/src/panora_sdk/lists.py +++ b/src/panora_sdk/lists.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Lists(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationListsResponse: + ) -> Optional[models.ListMarketingautomationListsResponse]: r"""List Lists :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationListsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/lists", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingautomationLists", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationLists", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationListsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingautomationListsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationListsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationListsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationListsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationListsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationListsResponse: + ) -> Optional[models.ListMarketingautomationListsResponse]: r"""List Lists :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationListsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/lists", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingautomationLists", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationLists", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationListsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListMarketingautomationListsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationListsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationListsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationListsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationListsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_list_input: Union[models.UnifiedMarketingautomationListInput, models.UnifiedMarketingautomationListInputTypedDict], + unified_marketingautomation_list_input: Union[ + models.UnifiedMarketingautomationListInput, + models.UnifiedMarketingautomationListInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create Lists in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_list_input: + :param unified_marketingautomation_list_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationListRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_list_input=utils.get_pydantic_model(unified_marketingautomation_list_input, models.UnifiedMarketingautomationListInput), + unified_marketingautomation_list_input=utils.get_pydantic_model( + unified_marketingautomation_list_input, + models.UnifiedMarketingautomationListInput, + ), ) - + req = self.build_request( method="POST", path="/marketingautomation/lists", @@ -251,45 +280,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_list_input, False, False, "json", models.UnifiedMarketingautomationListInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_list_input, + False, + False, + "json", + models.UnifiedMarketingautomationListInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createMarketingautomationList", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationList", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationListOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationListOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_list_input: Union[models.UnifiedMarketingautomationListInput, models.UnifiedMarketingautomationListInputTypedDict], + unified_marketingautomation_list_input: Union[ + models.UnifiedMarketingautomationListInput, + models.UnifiedMarketingautomationListInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +346,7 @@ async def create_async( Create Lists in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_list_input: + :param unified_marketingautomation_list_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +356,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationListRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_list_input=utils.get_pydantic_model(unified_marketingautomation_list_input, models.UnifiedMarketingautomationListInput), + unified_marketingautomation_list_input=utils.get_pydantic_model( + unified_marketingautomation_list_input, + models.UnifiedMarketingautomationListInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/marketingautomation/lists", base_url=base_url, @@ -332,43 +381,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_list_input, False, False, "json", models.UnifiedMarketingautomationListInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_list_input, + False, + False, + "json", + models.UnifiedMarketingautomationListInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createMarketingautomationList", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationList", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationListOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationListOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +454,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationListRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/lists/{id}", @@ -415,40 +478,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationList", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationList", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationListOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationListOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +542,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationListRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/lists/{id}", base_url=base_url, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationList", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationList", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationListOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationListOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/locations.py b/src/panora_sdk/locations.py deleted file mode 100644 index d7c3216..0000000 --- a/src/panora_sdk/locations.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Locations(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisLocationsResponse: - r"""List Locations - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisLocationsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/locations", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisLocations", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisLocationsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisLocationsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisLocationsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisLocationsResponse: - r"""List Locations - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisLocationsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/locations", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisLocations", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisLocationsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisLocationsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisLocationsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisLocationOutput]: - r"""Retrieve Location - - Retrieve a Location from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the location you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisLocationRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/locations/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisLocation", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisLocationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisLocationOutput]: - r"""Retrieve Location - - Retrieve a Location from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the location you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisLocationRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/locations/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisLocation", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisLocationOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/login.py b/src/panora_sdk/login.py index 0831fa3..1d3eb69 100644 --- a/src/panora_sdk/login.py +++ b/src/panora_sdk/login.py @@ -1,17 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import BaseModel, OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Optional, Union, cast + class Login(BaseSDK): - - def sign_in( - self, *, + self, + *, request: Union[models.LoginDto, models.LoginDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -28,14 +27,14 @@ def sign_in( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.LoginDto) request = cast(models.LoginDto, request) - + req = self.build_request( method="POST", path="/auth/login", @@ -48,43 +47,51 @@ def sign_in( user_agent_header="user-agent", accept_header_value="*/*", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.LoginDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.LoginDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="signIn", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="signIn", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def sign_in_async( - self, *, + self, + *, request: Union[models.LoginDto, models.LoginDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -101,15 +108,15 @@ async def sign_in_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.LoginDto) request = cast(models.LoginDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/auth/login", base_url=base_url, @@ -121,37 +128,44 @@ async def sign_in_async( user_agent_header="user-agent", accept_header_value="*/*", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.LoginDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.LoginDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="signIn", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="signIn", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/marketingautomation.py b/src/panora_sdk/marketingautomation.py index 0d8ee59..4881d61 100644 --- a/src/panora_sdk/marketingautomation.py +++ b/src/panora_sdk/marketingautomation.py @@ -9,10 +9,13 @@ from panora_sdk.lists import Lists from panora_sdk.messages import Messages from panora_sdk.panora_events import PanoraEvents -from panora_sdk.panora_marketingautomation_contacts import PanoraMarketingautomationContacts +from panora_sdk.panora_marketingautomation_contacts import ( + PanoraMarketingautomationContacts, +) from panora_sdk.panora_marketingautomation_users import PanoraMarketingautomationUsers from panora_sdk.templates import Templates + class Marketingautomation(BaseSDK): actions: Actions automations: Automations @@ -24,11 +27,12 @@ class Marketingautomation(BaseSDK): messages: Messages templates: Templates users: PanoraMarketingautomationUsers + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.actions = Actions(self.sdk_configuration) self.automations = Automations(self.sdk_configuration) @@ -40,4 +44,3 @@ def _init_sdks(self): self.messages = Messages(self.sdk_configuration) self.templates = Templates(self.sdk_configuration) self.users = PanoraMarketingautomationUsers(self.sdk_configuration) - diff --git a/src/panora_sdk/messages.py b/src/panora_sdk/messages.py index 62db71a..c4f0e38 100644 --- a/src/panora_sdk/messages.py +++ b/src/panora_sdk/messages.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Messages(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationMessagesResponse: + ) -> Optional[models.ListMarketingautomationMessagesResponse]: r"""List Messages :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationMessagesRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/messages", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingautomationMessages", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationMessages", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationMessagesResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingautomationMessagesResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationMessagesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationMessagesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationMessagesResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationMessagesResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationMessagesResponse: + ) -> Optional[models.ListMarketingautomationMessagesResponse]: r"""List Messages :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationMessagesRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/messages", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingautomationMessages", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationMessages", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationMessagesResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListMarketingautomationMessagesResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationMessagesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationMessagesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationMessagesResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationMessagesResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationMessageRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/messages/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationMessage", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationMessage", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationMessageOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationMessageOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationMessageRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/messages/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationMessage", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationMessage", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationMessageOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationMessageOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/models/__init__.py b/src/panora_sdk/models/__init__.py index 1ec9aae..24d222b 100644 --- a/src/panora_sdk/models/__init__.py +++ b/src/panora_sdk/models/__init__.py @@ -2,368 +2,2206 @@ from .address import Address, AddressTypedDict from .connection import Connection, ConnectionTypedDict, TokenType -from .createaccountingaccountop import CreateAccountingAccountRequest, CreateAccountingAccountRequestTypedDict -from .createaccountingattachmentop import CreateAccountingAttachmentRequest, CreateAccountingAttachmentRequestTypedDict -from .createaccountingcontactop import CreateAccountingContactRequest, CreateAccountingContactRequestTypedDict -from .createaccountingexpenseop import CreateAccountingExpenseRequest, CreateAccountingExpenseRequestTypedDict -from .createaccountinginvoiceop import CreateAccountingInvoiceRequest, CreateAccountingInvoiceRequestTypedDict -from .createaccountingjournalentryop import CreateAccountingJournalEntryRequest, CreateAccountingJournalEntryRequestTypedDict -from .createaccountingpaymentop import CreateAccountingPaymentRequest, CreateAccountingPaymentRequestTypedDict -from .createaccountingpurchaseorderop import CreateAccountingPurchaseOrderRequest, CreateAccountingPurchaseOrderRequestTypedDict -from .createatsactivityop import CreateAtsActivityRequest, CreateAtsActivityRequestTypedDict -from .createatsapplicationop import CreateAtsApplicationRequest, CreateAtsApplicationRequestTypedDict -from .createatsattachmentop import CreateAtsAttachmentRequest, CreateAtsAttachmentRequestTypedDict -from .createatscandidateop import CreateAtsCandidateRequest, CreateAtsCandidateRequestTypedDict -from .createatsinterviewop import CreateAtsInterviewRequest, CreateAtsInterviewRequestTypedDict -from .createbatchlinkeduserdto import CreateBatchLinkedUserDto, CreateBatchLinkedUserDtoTypedDict -from .createcrmcompanyop import CreateCrmCompanyRequest, CreateCrmCompanyRequestTypedDict -from .createcrmcontactop import CreateCrmContactRequest, CreateCrmContactRequestTypedDict +from .createaccountingaccountop import ( + CreateAccountingAccountRequest, + CreateAccountingAccountRequestTypedDict, +) +from .createaccountingattachmentop import ( + CreateAccountingAttachmentRequest, + CreateAccountingAttachmentRequestTypedDict, +) +from .createaccountingcontactop import ( + CreateAccountingContactRequest, + CreateAccountingContactRequestTypedDict, +) +from .createaccountingexpenseop import ( + CreateAccountingExpenseRequest, + CreateAccountingExpenseRequestTypedDict, +) +from .createaccountinginvoiceop import ( + CreateAccountingInvoiceRequest, + CreateAccountingInvoiceRequestTypedDict, +) +from .createaccountingjournalentryop import ( + CreateAccountingJournalEntryRequest, + CreateAccountingJournalEntryRequestTypedDict, +) +from .createaccountingpaymentop import ( + CreateAccountingPaymentRequest, + CreateAccountingPaymentRequestTypedDict, +) +from .createaccountingpurchaseorderop import ( + CreateAccountingPurchaseOrderRequest, + CreateAccountingPurchaseOrderRequestTypedDict, +) +from .createbatchlinkeduserdto import ( + CreateBatchLinkedUserDto, + CreateBatchLinkedUserDtoTypedDict, +) +from .createcrmcompanyop import ( + CreateCrmCompanyRequest, + CreateCrmCompanyRequestTypedDict, +) +from .createcrmcontactop import ( + CreateCrmContactRequest, + CreateCrmContactRequestTypedDict, +) from .createcrmdealop import CreateCrmDealRequest, CreateCrmDealRequestTypedDict -from .createcrmengagementop import CreateCrmEngagementRequest, CreateCrmEngagementRequestTypedDict +from .createcrmengagementop import ( + CreateCrmEngagementRequest, + CreateCrmEngagementRequestTypedDict, +) from .createcrmnoteop import CreateCrmNoteRequest, CreateCrmNoteRequestTypedDict from .createcrmtaskop import CreateCrmTaskRequest, CreateCrmTaskRequestTypedDict -from .createecommerceorderop import CreateEcommerceOrderRequest, CreateEcommerceOrderRequestTypedDict -from .createecommerceproductop import CreateEcommerceProductRequest, CreateEcommerceProductRequestTypedDict -from .createfilestoragefileop import CreateFilestorageFileRequest, CreateFilestorageFileRequestTypedDict -from .createfilestoragefolderop import CreateFilestorageFolderRequest, CreateFilestorageFolderRequestTypedDict -from .createhrisemployeeop import CreateHrisEmployeeRequest, CreateHrisEmployeeRequestTypedDict -from .createhristimeoffop import CreateHrisTimeoffRequest, CreateHrisTimeoffRequestTypedDict -from .createhristimesheetentryop import CreateHrisTimesheetentryRequest, CreateHrisTimesheetentryRequestTypedDict +from .createecommerceorderop import ( + CreateEcommerceOrderRequest, + CreateEcommerceOrderRequestTypedDict, +) +from .createecommerceproductop import ( + CreateEcommerceProductRequest, + CreateEcommerceProductRequestTypedDict, +) +from .createfilestoragefileop import ( + CreateFilestorageFileRequest, + CreateFilestorageFileRequestTypedDict, +) +from .createfilestoragefolderop import ( + CreateFilestorageFolderRequest, + CreateFilestorageFolderRequestTypedDict, +) from .createlinkeduserdto import CreateLinkedUserDto, CreateLinkedUserDtoTypedDict -from .createmarketingautomationactionop import CreateMarketingautomationActionRequest, CreateMarketingautomationActionRequestTypedDict -from .createmarketingautomationautomationop import CreateMarketingautomationAutomationRequest, CreateMarketingautomationAutomationRequestTypedDict -from .createmarketingautomationcampaignop import CreateMarketingautomationCampaignRequest, CreateMarketingautomationCampaignRequestTypedDict -from .createmarketingautomationcontactop import CreateMarketingAutomationContactRequest, CreateMarketingAutomationContactRequestTypedDict -from .createmarketingautomationlistop import CreateMarketingautomationListRequest, CreateMarketingautomationListRequestTypedDict -from .createmarketingautomationtemplateop import CreateMarketingautomationTemplateRequest, CreateMarketingautomationTemplateRequestTypedDict +from .createmarketingautomationactionop import ( + CreateMarketingautomationActionRequest, + CreateMarketingautomationActionRequestTypedDict, +) +from .createmarketingautomationautomationop import ( + CreateMarketingautomationAutomationRequest, + CreateMarketingautomationAutomationRequestTypedDict, +) +from .createmarketingautomationcampaignop import ( + CreateMarketingautomationCampaignRequest, + CreateMarketingautomationCampaignRequestTypedDict, +) +from .createmarketingautomationcontactop import ( + CreateMarketingAutomationContactRequest, + CreateMarketingAutomationContactRequestTypedDict, +) +from .createmarketingautomationlistop import ( + CreateMarketingautomationListRequest, + CreateMarketingautomationListRequestTypedDict, +) +from .createmarketingautomationtemplateop import ( + CreateMarketingautomationTemplateRequest, + CreateMarketingautomationTemplateRequestTypedDict, +) from .createprojectdto import CreateProjectDto, CreateProjectDtoTypedDict -from .createticketingattachmentop import CreateTicketingAttachmentRequest, CreateTicketingAttachmentRequestTypedDict -from .createticketingcommentop import CreateTicketingCommentRequest, CreateTicketingCommentRequestTypedDict -from .createticketingticketop import CreateTicketingTicketRequest, CreateTicketingTicketRequestTypedDict -from .customfieldcreatedto import CustomFieldCreateDto, CustomFieldCreateDtoDataType, CustomFieldCreateDtoObjectTypeOwner, CustomFieldCreateDtoTypedDict -from .customfieldresponse import CustomFieldResponse, CustomFieldResponseDataType, CustomFieldResponseTypedDict -from .deductionitem import DeductionItem, DeductionItemTypedDict -from .definetargetfielddto import DataType, DefineTargetFieldDto, DefineTargetFieldDtoTypedDict, ObjectTypeOwner +from .createticketingattachmentop import ( + CreateTicketingAttachmentRequest, + CreateTicketingAttachmentRequestTypedDict, +) +from .createticketingcommentop import ( + CreateTicketingCommentRequest, + CreateTicketingCommentRequestTypedDict, +) +from .createticketingticketop import ( + CreateTicketingTicketRequest, + CreateTicketingTicketRequestTypedDict, +) +from .customfieldcreatedto import ( + CustomFieldCreateDto, + CustomFieldCreateDtoDataType, + CustomFieldCreateDtoObjectTypeOwner, + CustomFieldCreateDtoTypedDict, +) +from .customfieldresponse import ( + CustomFieldResponse, + CustomFieldResponseDataType, + CustomFieldResponseTypedDict, +) +from .definetargetfielddto import ( + DataType, + DefineTargetFieldDto, + DefineTargetFieldDtoTypedDict, + ObjectTypeOwner, +) from .deleteop import DeleteRequest, DeleteRequestTypedDict -from .earningitem import EarningItem, EarningItemTypedDict from .email import Email, EmailTypedDict, OwnerType -from .eventresponse import EventResponse, EventResponseStatus, EventResponseTypedDict, Method, Type -from .getpanoracoreeventsop import GetPanoraCoreEventsRequest, GetPanoraCoreEventsRequestTypedDict -from .getretriedrequestresponseop import GetRetriedRequestResponseRequest, GetRetriedRequestResponseRequestTypedDict +from .eventresponse import ( + EventResponse, + EventResponseStatus, + EventResponseTypedDict, + Method, + Type, +) +from .getpanoracoreeventsop import ( + GetPanoraCoreEventsRequest, + GetPanoraCoreEventsRequestTypedDict, +) +from .getretriedrequestresponseop import ( + GetRetriedRequestResponseRequest, + GetRetriedRequestResponseRequestTypedDict, +) from .lineitem import LineItem, LineItemTypedDict from .linkeduserresponse import LinkedUserResponse, LinkedUserResponseTypedDict -from .listaccountingaccountsop import ListAccountingAccountsRequest, ListAccountingAccountsRequestTypedDict, ListAccountingAccountsResponse, ListAccountingAccountsResponseBody, ListAccountingAccountsResponseBodyTypedDict, ListAccountingAccountsResponseTypedDict -from .listaccountingaddressop import ListAccountingAddressRequest, ListAccountingAddressRequestTypedDict, ListAccountingAddressResponse, ListAccountingAddressResponseBody, ListAccountingAddressResponseBodyTypedDict, ListAccountingAddressResponseTypedDict -from .listaccountingattachmentsop import ListAccountingAttachmentsRequest, ListAccountingAttachmentsRequestTypedDict, ListAccountingAttachmentsResponse, ListAccountingAttachmentsResponseBody, ListAccountingAttachmentsResponseBodyTypedDict, ListAccountingAttachmentsResponseTypedDict -from .listaccountingbalancesheetsop import ListAccountingBalanceSheetsRequest, ListAccountingBalanceSheetsRequestTypedDict, ListAccountingBalanceSheetsResponse, ListAccountingBalanceSheetsResponseBody, ListAccountingBalanceSheetsResponseBodyTypedDict, ListAccountingBalanceSheetsResponseTypedDict -from .listaccountingcashflowstatementop import ListAccountingCashflowStatementRequest, ListAccountingCashflowStatementRequestTypedDict, ListAccountingCashflowStatementResponse, ListAccountingCashflowStatementResponseBody, ListAccountingCashflowStatementResponseBodyTypedDict, ListAccountingCashflowStatementResponseTypedDict -from .listaccountingcompanyinfosop import ListAccountingCompanyInfosRequest, ListAccountingCompanyInfosRequestTypedDict, ListAccountingCompanyInfosResponse, ListAccountingCompanyInfosResponseBody, ListAccountingCompanyInfosResponseBodyTypedDict, ListAccountingCompanyInfosResponseTypedDict -from .listaccountingcontactsop import ListAccountingContactsRequest, ListAccountingContactsRequestTypedDict, ListAccountingContactsResponse, ListAccountingContactsResponseBody, ListAccountingContactsResponseBodyTypedDict, ListAccountingContactsResponseTypedDict -from .listaccountingcreditnoteop import ListAccountingCreditNoteRequest, ListAccountingCreditNoteRequestTypedDict, ListAccountingCreditNoteResponse, ListAccountingCreditNoteResponseBody, ListAccountingCreditNoteResponseBodyTypedDict, ListAccountingCreditNoteResponseTypedDict -from .listaccountingexpenseop import ListAccountingExpenseRequest, ListAccountingExpenseRequestTypedDict, ListAccountingExpenseResponse, ListAccountingExpenseResponseBody, ListAccountingExpenseResponseBodyTypedDict, ListAccountingExpenseResponseTypedDict -from .listaccountingincomestatementop import ListAccountingIncomeStatementRequest, ListAccountingIncomeStatementRequestTypedDict, ListAccountingIncomeStatementResponse, ListAccountingIncomeStatementResponseBody, ListAccountingIncomeStatementResponseBodyTypedDict, ListAccountingIncomeStatementResponseTypedDict -from .listaccountinginvoiceop import ListAccountingInvoiceRequest, ListAccountingInvoiceRequestTypedDict, ListAccountingInvoiceResponse, ListAccountingInvoiceResponseBody, ListAccountingInvoiceResponseBodyTypedDict, ListAccountingInvoiceResponseTypedDict -from .listaccountingitemop import ListAccountingItemRequest, ListAccountingItemRequestTypedDict, ListAccountingItemResponse, ListAccountingItemResponseBody, ListAccountingItemResponseBodyTypedDict, ListAccountingItemResponseTypedDict -from .listaccountingjournalentryop import ListAccountingJournalEntryRequest, ListAccountingJournalEntryRequestTypedDict, ListAccountingJournalEntryResponse, ListAccountingJournalEntryResponseBody, ListAccountingJournalEntryResponseBodyTypedDict, ListAccountingJournalEntryResponseTypedDict -from .listaccountingpaymentop import ListAccountingPaymentRequest, ListAccountingPaymentRequestTypedDict, ListAccountingPaymentResponse, ListAccountingPaymentResponseBody, ListAccountingPaymentResponseBodyTypedDict, ListAccountingPaymentResponseTypedDict -from .listaccountingphonenumberop import ListAccountingPhonenumberRequest, ListAccountingPhonenumberRequestTypedDict, ListAccountingPhonenumberResponse, ListAccountingPhonenumberResponseBody, ListAccountingPhonenumberResponseBodyTypedDict, ListAccountingPhonenumberResponseTypedDict -from .listaccountingpurchaseorderop import ListAccountingPurchaseOrderRequest, ListAccountingPurchaseOrderRequestTypedDict, ListAccountingPurchaseOrderResponse, ListAccountingPurchaseOrderResponseBody, ListAccountingPurchaseOrderResponseBodyTypedDict, ListAccountingPurchaseOrderResponseTypedDict -from .listaccountingtaxrateop import ListAccountingTaxRateRequest, ListAccountingTaxRateRequestTypedDict, ListAccountingTaxRateResponse, ListAccountingTaxRateResponseBody, ListAccountingTaxRateResponseBodyTypedDict, ListAccountingTaxRateResponseTypedDict -from .listaccountingtrackingcategorysop import ListAccountingTrackingCategorysRequest, ListAccountingTrackingCategorysRequestTypedDict, ListAccountingTrackingCategorysResponse, ListAccountingTrackingCategorysResponseBody, ListAccountingTrackingCategorysResponseBodyTypedDict, ListAccountingTrackingCategorysResponseTypedDict -from .listaccountingtransactionop import ListAccountingTransactionRequest, ListAccountingTransactionRequestTypedDict, ListAccountingTransactionResponse, ListAccountingTransactionResponseBody, ListAccountingTransactionResponseBodyTypedDict, ListAccountingTransactionResponseTypedDict -from .listaccountingvendorcreditop import ListAccountingVendorCreditRequest, ListAccountingVendorCreditRequestTypedDict, ListAccountingVendorCreditResponse, ListAccountingVendorCreditResponseBody, ListAccountingVendorCreditResponseBodyTypedDict, ListAccountingVendorCreditResponseTypedDict -from .listatsactivityop import ListAtsActivityRequest, ListAtsActivityRequestTypedDict, ListAtsActivityResponse, ListAtsActivityResponseBody, ListAtsActivityResponseBodyTypedDict, ListAtsActivityResponseTypedDict -from .listatsapplicationop import ListAtsApplicationRequest, ListAtsApplicationRequestTypedDict, ListAtsApplicationResponse, ListAtsApplicationResponseBody, ListAtsApplicationResponseBodyTypedDict, ListAtsApplicationResponseTypedDict -from .listatsattachmentop import ListAtsAttachmentRequest, ListAtsAttachmentRequestTypedDict, ListAtsAttachmentResponse, ListAtsAttachmentResponseBody, ListAtsAttachmentResponseBodyTypedDict, ListAtsAttachmentResponseTypedDict -from .listatscandidateop import ListAtsCandidateRequest, ListAtsCandidateRequestTypedDict, ListAtsCandidateResponse, ListAtsCandidateResponseBody, ListAtsCandidateResponseBodyTypedDict, ListAtsCandidateResponseTypedDict -from .listatsdepartmentsop import ListAtsDepartmentsRequest, ListAtsDepartmentsRequestTypedDict, ListAtsDepartmentsResponse, ListAtsDepartmentsResponseBody, ListAtsDepartmentsResponseBodyTypedDict, ListAtsDepartmentsResponseTypedDict -from .listatseeocsop import ListAtsEeocsRequest, ListAtsEeocsRequestTypedDict, ListAtsEeocsResponse, ListAtsEeocsResponseBody, ListAtsEeocsResponseBodyTypedDict, ListAtsEeocsResponseTypedDict -from .listatsinterviewop import ListAtsInterviewRequest, ListAtsInterviewRequestTypedDict, ListAtsInterviewResponse, ListAtsInterviewResponseBody, ListAtsInterviewResponseBodyTypedDict, ListAtsInterviewResponseTypedDict -from .listatsjobinterviewstageop import ListAtsJobInterviewStageRequest, ListAtsJobInterviewStageRequestTypedDict, ListAtsJobInterviewStageResponse, ListAtsJobInterviewStageResponseBody, ListAtsJobInterviewStageResponseBodyTypedDict, ListAtsJobInterviewStageResponseTypedDict -from .listatsjobop import ListAtsJobRequest, ListAtsJobRequestTypedDict, ListAtsJobResponse, ListAtsJobResponseBody, ListAtsJobResponseBodyTypedDict, ListAtsJobResponseTypedDict -from .listatsofferop import ListAtsOfferRequest, ListAtsOfferRequestTypedDict, ListAtsOfferResponse, ListAtsOfferResponseBody, ListAtsOfferResponseBodyTypedDict, ListAtsOfferResponseTypedDict -from .listatsofficeop import ListAtsOfficeRequest, ListAtsOfficeRequestTypedDict, ListAtsOfficeResponse, ListAtsOfficeResponseBody, ListAtsOfficeResponseBodyTypedDict, ListAtsOfficeResponseTypedDict -from .listatsrejectreasonsop import ListAtsRejectReasonsRequest, ListAtsRejectReasonsRequestTypedDict, ListAtsRejectReasonsResponse, ListAtsRejectReasonsResponseBody, ListAtsRejectReasonsResponseBodyTypedDict, ListAtsRejectReasonsResponseTypedDict -from .listatsscorecardop import ListAtsScorecardRequest, ListAtsScorecardRequestTypedDict, ListAtsScorecardResponse, ListAtsScorecardResponseBody, ListAtsScorecardResponseBodyTypedDict, ListAtsScorecardResponseTypedDict -from .listatstagsop import ListAtsTagsRequest, ListAtsTagsRequestTypedDict, ListAtsTagsResponse, ListAtsTagsResponseBody, ListAtsTagsResponseBodyTypedDict, ListAtsTagsResponseTypedDict -from .listatsusersop import ListAtsUsersRequest, ListAtsUsersRequestTypedDict, ListAtsUsersResponse, ListAtsUsersResponseBody, ListAtsUsersResponseBodyTypedDict, ListAtsUsersResponseTypedDict -from .listcrmcompanyop import ListCrmCompanyRequest, ListCrmCompanyRequestTypedDict, ListCrmCompanyResponse, ListCrmCompanyResponseBody, ListCrmCompanyResponseBodyTypedDict, ListCrmCompanyResponseTypedDict -from .listcrmcontactsop import ListCrmContactsRequest, ListCrmContactsRequestTypedDict, ListCrmContactsResponse, ListCrmContactsResponseBody, ListCrmContactsResponseBodyTypedDict, ListCrmContactsResponseTypedDict -from .listcrmdealsop import ListCrmDealsRequest, ListCrmDealsRequestTypedDict, ListCrmDealsResponse, ListCrmDealsResponseBody, ListCrmDealsResponseBodyTypedDict, ListCrmDealsResponseTypedDict -from .listcrmengagementsop import ListCrmEngagementsRequest, ListCrmEngagementsRequestTypedDict, ListCrmEngagementsResponse, ListCrmEngagementsResponseBody, ListCrmEngagementsResponseBodyTypedDict, ListCrmEngagementsResponseTypedDict -from .listcrmnoteop import ListCrmNoteRequest, ListCrmNoteRequestTypedDict, ListCrmNoteResponse, ListCrmNoteResponseBody, ListCrmNoteResponseBodyTypedDict, ListCrmNoteResponseTypedDict -from .listcrmstagesop import ListCrmStagesRequest, ListCrmStagesRequestTypedDict, ListCrmStagesResponse, ListCrmStagesResponseBody, ListCrmStagesResponseBodyTypedDict, ListCrmStagesResponseTypedDict -from .listcrmtaskop import ListCrmTaskRequest, ListCrmTaskRequestTypedDict, ListCrmTaskResponse, ListCrmTaskResponseBody, ListCrmTaskResponseBodyTypedDict, ListCrmTaskResponseTypedDict -from .listcrmusersop import ListCrmUsersRequest, ListCrmUsersRequestTypedDict, ListCrmUsersResponse, ListCrmUsersResponseBody, ListCrmUsersResponseBodyTypedDict, ListCrmUsersResponseTypedDict -from .listecommercecustomersop import ListEcommerceCustomersRequest, ListEcommerceCustomersRequestTypedDict, ListEcommerceCustomersResponse, ListEcommerceCustomersResponseBody, ListEcommerceCustomersResponseBodyTypedDict, ListEcommerceCustomersResponseTypedDict -from .listecommercefulfillmentsop import ListEcommerceFulfillmentsRequest, ListEcommerceFulfillmentsRequestTypedDict, ListEcommerceFulfillmentsResponse, ListEcommerceFulfillmentsResponseBody, ListEcommerceFulfillmentsResponseBodyTypedDict, ListEcommerceFulfillmentsResponseTypedDict -from .listecommerceordersop import ListEcommerceOrdersRequest, ListEcommerceOrdersRequestTypedDict, ListEcommerceOrdersResponse, ListEcommerceOrdersResponseBody, ListEcommerceOrdersResponseBodyTypedDict, ListEcommerceOrdersResponseTypedDict -from .listecommerceproductsop import ListEcommerceProductsRequest, ListEcommerceProductsRequestTypedDict, ListEcommerceProductsResponse, ListEcommerceProductsResponseBody, ListEcommerceProductsResponseBodyTypedDict, ListEcommerceProductsResponseTypedDict -from .listfilestoragefileop import ListFilestorageFileRequest, ListFilestorageFileRequestTypedDict, ListFilestorageFileResponse, ListFilestorageFileResponseBody, ListFilestorageFileResponseBodyTypedDict, ListFilestorageFileResponseTypedDict -from .listfilestoragefolderop import ListFilestorageFolderRequest, ListFilestorageFolderRequestTypedDict, ListFilestorageFolderResponse, ListFilestorageFolderResponseBody, ListFilestorageFolderResponseBodyTypedDict, ListFilestorageFolderResponseTypedDict -from .listfilestoragegroupop import ListFilestorageGroupRequest, ListFilestorageGroupRequestTypedDict, ListFilestorageGroupResponse, ListFilestorageGroupResponseBody, ListFilestorageGroupResponseBodyTypedDict, ListFilestorageGroupResponseTypedDict -from .listfilestorageusersop import ListFilestorageUsersRequest, ListFilestorageUsersRequestTypedDict, ListFilestorageUsersResponse, ListFilestorageUsersResponseBody, ListFilestorageUsersResponseBodyTypedDict, ListFilestorageUsersResponseTypedDict -from .listhrisbankinfoop import ListHrisBankInfoRequest, ListHrisBankInfoRequestTypedDict, ListHrisBankInfoResponse, ListHrisBankInfoResponseBody, ListHrisBankInfoResponseBodyTypedDict, ListHrisBankInfoResponseTypedDict -from .listhrisbenefitsop import ListHrisBenefitsRequest, ListHrisBenefitsRequestTypedDict, ListHrisBenefitsResponse, ListHrisBenefitsResponseBody, ListHrisBenefitsResponseBodyTypedDict, ListHrisBenefitsResponseTypedDict -from .listhriscompaniesop import ListHrisCompaniesRequest, ListHrisCompaniesRequestTypedDict, ListHrisCompaniesResponse, ListHrisCompaniesResponseBody, ListHrisCompaniesResponseBodyTypedDict, ListHrisCompaniesResponseTypedDict -from .listhrisdependentsop import ListHrisDependentsRequest, ListHrisDependentsRequestTypedDict, ListHrisDependentsResponse, ListHrisDependentsResponseBody, ListHrisDependentsResponseBodyTypedDict, ListHrisDependentsResponseTypedDict -from .listhrisemployeepayrollrunop import ListHrisEmployeePayrollRunRequest, ListHrisEmployeePayrollRunRequestTypedDict, ListHrisEmployeePayrollRunResponse, ListHrisEmployeePayrollRunResponseBody, ListHrisEmployeePayrollRunResponseBodyTypedDict, ListHrisEmployeePayrollRunResponseTypedDict -from .listhrisemployeesop import ListHrisEmployeesRequest, ListHrisEmployeesRequestTypedDict, ListHrisEmployeesResponse, ListHrisEmployeesResponseBody, ListHrisEmployeesResponseBodyTypedDict, ListHrisEmployeesResponseTypedDict -from .listhrisemployerbenefitsop import ListHrisEmployerBenefitsRequest, ListHrisEmployerBenefitsRequestTypedDict, ListHrisEmployerBenefitsResponse, ListHrisEmployerBenefitsResponseBody, ListHrisEmployerBenefitsResponseBodyTypedDict, ListHrisEmployerBenefitsResponseTypedDict -from .listhrisemploymentsop import ListHrisEmploymentsRequest, ListHrisEmploymentsRequestTypedDict, ListHrisEmploymentsResponse, ListHrisEmploymentsResponseBody, ListHrisEmploymentsResponseBodyTypedDict, ListHrisEmploymentsResponseTypedDict -from .listhrisgroupsop import ListHrisGroupsRequest, ListHrisGroupsRequestTypedDict, ListHrisGroupsResponse, ListHrisGroupsResponseBody, ListHrisGroupsResponseBodyTypedDict, ListHrisGroupsResponseTypedDict -from .listhrislocationsop import ListHrisLocationsRequest, ListHrisLocationsRequestTypedDict, ListHrisLocationsResponse, ListHrisLocationsResponseBody, ListHrisLocationsResponseBodyTypedDict, ListHrisLocationsResponseTypedDict -from .listhrispaygroupsop import ListHrisPaygroupsRequest, ListHrisPaygroupsRequestTypedDict, ListHrisPaygroupsResponse, ListHrisPaygroupsResponseBody, ListHrisPaygroupsResponseBodyTypedDict, ListHrisPaygroupsResponseTypedDict -from .listhrispayrollrunsop import ListHrisPayrollRunsRequest, ListHrisPayrollRunsRequestTypedDict, ListHrisPayrollRunsResponse, ListHrisPayrollRunsResponseBody, ListHrisPayrollRunsResponseBodyTypedDict, ListHrisPayrollRunsResponseTypedDict -from .listhristimeoffbalancesop import ListHrisTimeoffbalancesRequest, ListHrisTimeoffbalancesRequestTypedDict, ListHrisTimeoffbalancesResponse, ListHrisTimeoffbalancesResponseBody, ListHrisTimeoffbalancesResponseBodyTypedDict, ListHrisTimeoffbalancesResponseTypedDict -from .listhristimeoffsop import ListHrisTimeoffsRequest, ListHrisTimeoffsRequestTypedDict, ListHrisTimeoffsResponse, ListHrisTimeoffsResponseBody, ListHrisTimeoffsResponseBodyTypedDict, ListHrisTimeoffsResponseTypedDict -from .listhristimesheetentriesop import ListHrisTimesheetentriesRequest, ListHrisTimesheetentriesRequestTypedDict, ListHrisTimesheetentriesResponse, ListHrisTimesheetentriesResponseBody, ListHrisTimesheetentriesResponseBodyTypedDict, ListHrisTimesheetentriesResponseTypedDict -from .listmarketingautomationactionop import ListMarketingautomationActionRequest, ListMarketingautomationActionRequestTypedDict, ListMarketingautomationActionResponse, ListMarketingautomationActionResponseBody, ListMarketingautomationActionResponseBodyTypedDict, ListMarketingautomationActionResponseTypedDict -from .listmarketingautomationautomationsop import ListMarketingautomationAutomationsRequest, ListMarketingautomationAutomationsRequestTypedDict, ListMarketingautomationAutomationsResponse, ListMarketingautomationAutomationsResponseBody, ListMarketingautomationAutomationsResponseBodyTypedDict, ListMarketingautomationAutomationsResponseTypedDict -from .listmarketingautomationcampaignsop import ListMarketingautomationCampaignsRequest, ListMarketingautomationCampaignsRequestTypedDict, ListMarketingautomationCampaignsResponse, ListMarketingautomationCampaignsResponseBody, ListMarketingautomationCampaignsResponseBodyTypedDict, ListMarketingautomationCampaignsResponseTypedDict -from .listmarketingautomationcontactsop import ListMarketingAutomationContactsRequest, ListMarketingAutomationContactsRequestTypedDict, ListMarketingAutomationContactsResponse, ListMarketingAutomationContactsResponseBody, ListMarketingAutomationContactsResponseBodyTypedDict, ListMarketingAutomationContactsResponseTypedDict -from .listmarketingautomationemailsop import ListMarketingautomationEmailsRequest, ListMarketingautomationEmailsRequestTypedDict, ListMarketingautomationEmailsResponse, ListMarketingautomationEmailsResponseBody, ListMarketingautomationEmailsResponseBodyTypedDict, ListMarketingautomationEmailsResponseTypedDict -from .listmarketingautomationeventsop import ListMarketingAutomationEventsRequest, ListMarketingAutomationEventsRequestTypedDict, ListMarketingAutomationEventsResponse, ListMarketingAutomationEventsResponseBody, ListMarketingAutomationEventsResponseBodyTypedDict, ListMarketingAutomationEventsResponseTypedDict -from .listmarketingautomationlistsop import ListMarketingautomationListsRequest, ListMarketingautomationListsRequestTypedDict, ListMarketingautomationListsResponse, ListMarketingautomationListsResponseBody, ListMarketingautomationListsResponseBodyTypedDict, ListMarketingautomationListsResponseTypedDict -from .listmarketingautomationmessagesop import ListMarketingautomationMessagesRequest, ListMarketingautomationMessagesRequestTypedDict, ListMarketingautomationMessagesResponse, ListMarketingautomationMessagesResponseBody, ListMarketingautomationMessagesResponseBodyTypedDict, ListMarketingautomationMessagesResponseTypedDict -from .listmarketingautomationtemplatesop import ListMarketingautomationTemplatesRequest, ListMarketingautomationTemplatesRequestTypedDict, ListMarketingautomationTemplatesResponse, ListMarketingautomationTemplatesResponseBody, ListMarketingautomationTemplatesResponseBodyTypedDict, ListMarketingautomationTemplatesResponseTypedDict -from .listmarketingautomationusersop import ListMarketingAutomationUsersRequest, ListMarketingAutomationUsersRequestTypedDict, ListMarketingAutomationUsersResponse, ListMarketingAutomationUsersResponseBody, ListMarketingAutomationUsersResponseBodyTypedDict, ListMarketingAutomationUsersResponseTypedDict -from .listticketingaccountop import ListTicketingAccountRequest, ListTicketingAccountRequestTypedDict, ListTicketingAccountResponse, ListTicketingAccountResponseBody, ListTicketingAccountResponseBodyTypedDict, ListTicketingAccountResponseTypedDict -from .listticketingattachmentsop import ListTicketingAttachmentsRequest, ListTicketingAttachmentsRequestTypedDict, ListTicketingAttachmentsResponse, ListTicketingAttachmentsResponseBody, ListTicketingAttachmentsResponseBodyTypedDict, ListTicketingAttachmentsResponseTypedDict -from .listticketingcollectionsop import ListTicketingCollectionsRequest, ListTicketingCollectionsRequestTypedDict, ListTicketingCollectionsResponse, ListTicketingCollectionsResponseBody, ListTicketingCollectionsResponseBodyTypedDict, ListTicketingCollectionsResponseTypedDict -from .listticketingcommentsop import ListTicketingCommentsRequest, ListTicketingCommentsRequestTypedDict, ListTicketingCommentsResponse, ListTicketingCommentsResponseBody, ListTicketingCommentsResponseBodyTypedDict, ListTicketingCommentsResponseTypedDict -from .listticketingcontactsop import ListTicketingContactsRequest, ListTicketingContactsRequestTypedDict, ListTicketingContactsResponse, ListTicketingContactsResponseBody, ListTicketingContactsResponseBodyTypedDict, ListTicketingContactsResponseTypedDict -from .listticketingtagsop import ListTicketingTagsRequest, ListTicketingTagsRequestTypedDict, ListTicketingTagsResponse, ListTicketingTagsResponseBody, ListTicketingTagsResponseBodyTypedDict, ListTicketingTagsResponseTypedDict -from .listticketingteamsop import ListTicketingTeamsRequest, ListTicketingTeamsRequestTypedDict, ListTicketingTeamsResponse, ListTicketingTeamsResponseBody, ListTicketingTeamsResponseBodyTypedDict, ListTicketingTeamsResponseTypedDict -from .listticketingticketop import ListTicketingTicketRequest, ListTicketingTicketRequestTypedDict, ListTicketingTicketResponse, ListTicketingTicketResponseBody, ListTicketingTicketResponseBodyTypedDict, ListTicketingTicketResponseTypedDict -from .listticketingusersop import ListTicketingUsersRequest, ListTicketingUsersRequestTypedDict, ListTicketingUsersResponse, ListTicketingUsersResponseBody, ListTicketingUsersResponseBodyTypedDict, ListTicketingUsersResponseTypedDict +from .listaccountingaccountsop import ( + ListAccountingAccountsRequest, + ListAccountingAccountsRequestTypedDict, + ListAccountingAccountsResponse, + ListAccountingAccountsResponseBody, + ListAccountingAccountsResponseBodyTypedDict, + ListAccountingAccountsResponseTypedDict, +) +from .listaccountingaddressop import ( + ListAccountingAddressRequest, + ListAccountingAddressRequestTypedDict, + ListAccountingAddressResponse, + ListAccountingAddressResponseBody, + ListAccountingAddressResponseBodyTypedDict, + ListAccountingAddressResponseTypedDict, +) +from .listaccountingattachmentsop import ( + ListAccountingAttachmentsRequest, + ListAccountingAttachmentsRequestTypedDict, + ListAccountingAttachmentsResponse, + ListAccountingAttachmentsResponseBody, + ListAccountingAttachmentsResponseBodyTypedDict, + ListAccountingAttachmentsResponseTypedDict, +) +from .listaccountingbalancesheetsop import ( + ListAccountingBalanceSheetsRequest, + ListAccountingBalanceSheetsRequestTypedDict, + ListAccountingBalanceSheetsResponse, + ListAccountingBalanceSheetsResponseBody, + ListAccountingBalanceSheetsResponseBodyTypedDict, + ListAccountingBalanceSheetsResponseTypedDict, +) +from .listaccountingcashflowstatementop import ( + ListAccountingCashflowStatementRequest, + ListAccountingCashflowStatementRequestTypedDict, + ListAccountingCashflowStatementResponse, + ListAccountingCashflowStatementResponseBody, + ListAccountingCashflowStatementResponseBodyTypedDict, + ListAccountingCashflowStatementResponseTypedDict, +) +from .listaccountingcompanyinfosop import ( + ListAccountingCompanyInfosRequest, + ListAccountingCompanyInfosRequestTypedDict, + ListAccountingCompanyInfosResponse, + ListAccountingCompanyInfosResponseBody, + ListAccountingCompanyInfosResponseBodyTypedDict, + ListAccountingCompanyInfosResponseTypedDict, +) +from .listaccountingcontactsop import ( + ListAccountingContactsRequest, + ListAccountingContactsRequestTypedDict, + ListAccountingContactsResponse, + ListAccountingContactsResponseBody, + ListAccountingContactsResponseBodyTypedDict, + ListAccountingContactsResponseTypedDict, +) +from .listaccountingcreditnoteop import ( + ListAccountingCreditNoteRequest, + ListAccountingCreditNoteRequestTypedDict, + ListAccountingCreditNoteResponse, + ListAccountingCreditNoteResponseBody, + ListAccountingCreditNoteResponseBodyTypedDict, + ListAccountingCreditNoteResponseTypedDict, +) +from .listaccountingexpenseop import ( + ListAccountingExpenseRequest, + ListAccountingExpenseRequestTypedDict, + ListAccountingExpenseResponse, + ListAccountingExpenseResponseBody, + ListAccountingExpenseResponseBodyTypedDict, + ListAccountingExpenseResponseTypedDict, +) +from .listaccountingincomestatementop import ( + ListAccountingIncomeStatementRequest, + ListAccountingIncomeStatementRequestTypedDict, + ListAccountingIncomeStatementResponse, + ListAccountingIncomeStatementResponseBody, + ListAccountingIncomeStatementResponseBodyTypedDict, + ListAccountingIncomeStatementResponseTypedDict, +) +from .listaccountinginvoiceop import ( + ListAccountingInvoiceRequest, + ListAccountingInvoiceRequestTypedDict, + ListAccountingInvoiceResponse, + ListAccountingInvoiceResponseBody, + ListAccountingInvoiceResponseBodyTypedDict, + ListAccountingInvoiceResponseTypedDict, +) +from .listaccountingitemop import ( + ListAccountingItemRequest, + ListAccountingItemRequestTypedDict, + ListAccountingItemResponse, + ListAccountingItemResponseBody, + ListAccountingItemResponseBodyTypedDict, + ListAccountingItemResponseTypedDict, +) +from .listaccountingjournalentryop import ( + ListAccountingJournalEntryRequest, + ListAccountingJournalEntryRequestTypedDict, + ListAccountingJournalEntryResponse, + ListAccountingJournalEntryResponseBody, + ListAccountingJournalEntryResponseBodyTypedDict, + ListAccountingJournalEntryResponseTypedDict, +) +from .listaccountingpaymentop import ( + ListAccountingPaymentRequest, + ListAccountingPaymentRequestTypedDict, + ListAccountingPaymentResponse, + ListAccountingPaymentResponseBody, + ListAccountingPaymentResponseBodyTypedDict, + ListAccountingPaymentResponseTypedDict, +) +from .listaccountingphonenumberop import ( + ListAccountingPhonenumberRequest, + ListAccountingPhonenumberRequestTypedDict, + ListAccountingPhonenumberResponse, + ListAccountingPhonenumberResponseBody, + ListAccountingPhonenumberResponseBodyTypedDict, + ListAccountingPhonenumberResponseTypedDict, +) +from .listaccountingpurchaseorderop import ( + ListAccountingPurchaseOrderRequest, + ListAccountingPurchaseOrderRequestTypedDict, + ListAccountingPurchaseOrderResponse, + ListAccountingPurchaseOrderResponseBody, + ListAccountingPurchaseOrderResponseBodyTypedDict, + ListAccountingPurchaseOrderResponseTypedDict, +) +from .listaccountingtaxrateop import ( + ListAccountingTaxRateRequest, + ListAccountingTaxRateRequestTypedDict, + ListAccountingTaxRateResponse, + ListAccountingTaxRateResponseBody, + ListAccountingTaxRateResponseBodyTypedDict, + ListAccountingTaxRateResponseTypedDict, +) +from .listaccountingtrackingcategorysop import ( + ListAccountingTrackingCategorysRequest, + ListAccountingTrackingCategorysRequestTypedDict, + ListAccountingTrackingCategorysResponse, + ListAccountingTrackingCategorysResponseBody, + ListAccountingTrackingCategorysResponseBodyTypedDict, + ListAccountingTrackingCategorysResponseTypedDict, +) +from .listaccountingtransactionop import ( + ListAccountingTransactionRequest, + ListAccountingTransactionRequestTypedDict, + ListAccountingTransactionResponse, + ListAccountingTransactionResponseBody, + ListAccountingTransactionResponseBodyTypedDict, + ListAccountingTransactionResponseTypedDict, +) +from .listaccountingvendorcreditop import ( + ListAccountingVendorCreditRequest, + ListAccountingVendorCreditRequestTypedDict, + ListAccountingVendorCreditResponse, + ListAccountingVendorCreditResponseBody, + ListAccountingVendorCreditResponseBodyTypedDict, + ListAccountingVendorCreditResponseTypedDict, +) +from .listcrmcompanyop import ( + ListCrmCompanyRequest, + ListCrmCompanyRequestTypedDict, + ListCrmCompanyResponse, + ListCrmCompanyResponseBody, + ListCrmCompanyResponseBodyTypedDict, + ListCrmCompanyResponseTypedDict, +) +from .listcrmcontactsop import ( + ListCrmContactsRequest, + ListCrmContactsRequestTypedDict, + ListCrmContactsResponse, + ListCrmContactsResponseBody, + ListCrmContactsResponseBodyTypedDict, + ListCrmContactsResponseTypedDict, +) +from .listcrmdealsop import ( + ListCrmDealsRequest, + ListCrmDealsRequestTypedDict, + ListCrmDealsResponse, + ListCrmDealsResponseBody, + ListCrmDealsResponseBodyTypedDict, + ListCrmDealsResponseTypedDict, +) +from .listcrmengagementsop import ( + ListCrmEngagementsRequest, + ListCrmEngagementsRequestTypedDict, + ListCrmEngagementsResponse, + ListCrmEngagementsResponseBody, + ListCrmEngagementsResponseBodyTypedDict, + ListCrmEngagementsResponseTypedDict, +) +from .listcrmnoteop import ( + ListCrmNoteRequest, + ListCrmNoteRequestTypedDict, + ListCrmNoteResponse, + ListCrmNoteResponseBody, + ListCrmNoteResponseBodyTypedDict, + ListCrmNoteResponseTypedDict, +) +from .listcrmstagesop import ( + ListCrmStagesRequest, + ListCrmStagesRequestTypedDict, + ListCrmStagesResponse, + ListCrmStagesResponseBody, + ListCrmStagesResponseBodyTypedDict, + ListCrmStagesResponseTypedDict, +) +from .listcrmtaskop import ( + ListCrmTaskRequest, + ListCrmTaskRequestTypedDict, + ListCrmTaskResponse, + ListCrmTaskResponseBody, + ListCrmTaskResponseBodyTypedDict, + ListCrmTaskResponseTypedDict, +) +from .listcrmusersop import ( + ListCrmUsersRequest, + ListCrmUsersRequestTypedDict, + ListCrmUsersResponse, + ListCrmUsersResponseBody, + ListCrmUsersResponseBodyTypedDict, + ListCrmUsersResponseTypedDict, +) +from .listecommercecustomersop import ( + ListEcommerceCustomersRequest, + ListEcommerceCustomersRequestTypedDict, + ListEcommerceCustomersResponse, + ListEcommerceCustomersResponseBody, + ListEcommerceCustomersResponseBodyTypedDict, + ListEcommerceCustomersResponseTypedDict, +) +from .listecommercefulfillmentsop import ( + ListEcommerceFulfillmentsRequest, + ListEcommerceFulfillmentsRequestTypedDict, + ListEcommerceFulfillmentsResponse, + ListEcommerceFulfillmentsResponseBody, + ListEcommerceFulfillmentsResponseBodyTypedDict, + ListEcommerceFulfillmentsResponseTypedDict, +) +from .listecommerceordersop import ( + ListEcommerceOrdersRequest, + ListEcommerceOrdersRequestTypedDict, + ListEcommerceOrdersResponse, + ListEcommerceOrdersResponseBody, + ListEcommerceOrdersResponseBodyTypedDict, + ListEcommerceOrdersResponseTypedDict, +) +from .listecommerceproductsop import ( + ListEcommerceProductsRequest, + ListEcommerceProductsRequestTypedDict, + ListEcommerceProductsResponse, + ListEcommerceProductsResponseBody, + ListEcommerceProductsResponseBodyTypedDict, + ListEcommerceProductsResponseTypedDict, +) +from .listfilestoragefileop import ( + ListFilestorageFileRequest, + ListFilestorageFileRequestTypedDict, + ListFilestorageFileResponse, + ListFilestorageFileResponseBody, + ListFilestorageFileResponseBodyTypedDict, + ListFilestorageFileResponseTypedDict, +) +from .listfilestoragefolderop import ( + ListFilestorageFolderRequest, + ListFilestorageFolderRequestTypedDict, + ListFilestorageFolderResponse, + ListFilestorageFolderResponseBody, + ListFilestorageFolderResponseBodyTypedDict, + ListFilestorageFolderResponseTypedDict, +) +from .listfilestoragegroupop import ( + ListFilestorageGroupRequest, + ListFilestorageGroupRequestTypedDict, + ListFilestorageGroupResponse, + ListFilestorageGroupResponseBody, + ListFilestorageGroupResponseBodyTypedDict, + ListFilestorageGroupResponseTypedDict, +) +from .listfilestorageusersop import ( + ListFilestorageUsersRequest, + ListFilestorageUsersRequestTypedDict, + ListFilestorageUsersResponse, + ListFilestorageUsersResponseBody, + ListFilestorageUsersResponseBodyTypedDict, + ListFilestorageUsersResponseTypedDict, +) +from .listmarketingautomationactionop import ( + ListMarketingautomationActionRequest, + ListMarketingautomationActionRequestTypedDict, + ListMarketingautomationActionResponse, + ListMarketingautomationActionResponseBody, + ListMarketingautomationActionResponseBodyTypedDict, + ListMarketingautomationActionResponseTypedDict, +) +from .listmarketingautomationautomationsop import ( + ListMarketingautomationAutomationsRequest, + ListMarketingautomationAutomationsRequestTypedDict, + ListMarketingautomationAutomationsResponse, + ListMarketingautomationAutomationsResponseBody, + ListMarketingautomationAutomationsResponseBodyTypedDict, + ListMarketingautomationAutomationsResponseTypedDict, +) +from .listmarketingautomationcampaignsop import ( + ListMarketingautomationCampaignsRequest, + ListMarketingautomationCampaignsRequestTypedDict, + ListMarketingautomationCampaignsResponse, + ListMarketingautomationCampaignsResponseBody, + ListMarketingautomationCampaignsResponseBodyTypedDict, + ListMarketingautomationCampaignsResponseTypedDict, +) +from .listmarketingautomationcontactsop import ( + ListMarketingAutomationContactsRequest, + ListMarketingAutomationContactsRequestTypedDict, + ListMarketingAutomationContactsResponse, + ListMarketingAutomationContactsResponseBody, + ListMarketingAutomationContactsResponseBodyTypedDict, + ListMarketingAutomationContactsResponseTypedDict, +) +from .listmarketingautomationemailsop import ( + ListMarketingautomationEmailsRequest, + ListMarketingautomationEmailsRequestTypedDict, + ListMarketingautomationEmailsResponse, + ListMarketingautomationEmailsResponseBody, + ListMarketingautomationEmailsResponseBodyTypedDict, + ListMarketingautomationEmailsResponseTypedDict, +) +from .listmarketingautomationeventsop import ( + ListMarketingAutomationEventsRequest, + ListMarketingAutomationEventsRequestTypedDict, + ListMarketingAutomationEventsResponse, + ListMarketingAutomationEventsResponseBody, + ListMarketingAutomationEventsResponseBodyTypedDict, + ListMarketingAutomationEventsResponseTypedDict, +) +from .listmarketingautomationlistsop import ( + ListMarketingautomationListsRequest, + ListMarketingautomationListsRequestTypedDict, + ListMarketingautomationListsResponse, + ListMarketingautomationListsResponseBody, + ListMarketingautomationListsResponseBodyTypedDict, + ListMarketingautomationListsResponseTypedDict, +) +from .listmarketingautomationmessagesop import ( + ListMarketingautomationMessagesRequest, + ListMarketingautomationMessagesRequestTypedDict, + ListMarketingautomationMessagesResponse, + ListMarketingautomationMessagesResponseBody, + ListMarketingautomationMessagesResponseBodyTypedDict, + ListMarketingautomationMessagesResponseTypedDict, +) +from .listmarketingautomationtemplatesop import ( + ListMarketingautomationTemplatesRequest, + ListMarketingautomationTemplatesRequestTypedDict, + ListMarketingautomationTemplatesResponse, + ListMarketingautomationTemplatesResponseBody, + ListMarketingautomationTemplatesResponseBodyTypedDict, + ListMarketingautomationTemplatesResponseTypedDict, +) +from .listmarketingautomationusersop import ( + ListMarketingAutomationUsersRequest, + ListMarketingAutomationUsersRequestTypedDict, + ListMarketingAutomationUsersResponse, + ListMarketingAutomationUsersResponseBody, + ListMarketingAutomationUsersResponseBodyTypedDict, + ListMarketingAutomationUsersResponseTypedDict, +) +from .listticketingaccountop import ( + ListTicketingAccountRequest, + ListTicketingAccountRequestTypedDict, + ListTicketingAccountResponse, + ListTicketingAccountResponseBody, + ListTicketingAccountResponseBodyTypedDict, + ListTicketingAccountResponseTypedDict, +) +from .listticketingattachmentsop import ( + ListTicketingAttachmentsRequest, + ListTicketingAttachmentsRequestTypedDict, + ListTicketingAttachmentsResponse, + ListTicketingAttachmentsResponseBody, + ListTicketingAttachmentsResponseBodyTypedDict, + ListTicketingAttachmentsResponseTypedDict, +) +from .listticketingcollectionsop import ( + ListTicketingCollectionsRequest, + ListTicketingCollectionsRequestTypedDict, + ListTicketingCollectionsResponse, + ListTicketingCollectionsResponseBody, + ListTicketingCollectionsResponseBodyTypedDict, + ListTicketingCollectionsResponseTypedDict, +) +from .listticketingcommentsop import ( + ListTicketingCommentsRequest, + ListTicketingCommentsRequestTypedDict, + ListTicketingCommentsResponse, + ListTicketingCommentsResponseBody, + ListTicketingCommentsResponseBodyTypedDict, + ListTicketingCommentsResponseTypedDict, +) +from .listticketingcontactsop import ( + ListTicketingContactsRequest, + ListTicketingContactsRequestTypedDict, + ListTicketingContactsResponse, + ListTicketingContactsResponseBody, + ListTicketingContactsResponseBodyTypedDict, + ListTicketingContactsResponseTypedDict, +) +from .listticketingtagsop import ( + ListTicketingTagsRequest, + ListTicketingTagsRequestTypedDict, + ListTicketingTagsResponse, + ListTicketingTagsResponseBody, + ListTicketingTagsResponseBodyTypedDict, + ListTicketingTagsResponseTypedDict, +) +from .listticketingteamsop import ( + ListTicketingTeamsRequest, + ListTicketingTeamsRequestTypedDict, + ListTicketingTeamsResponse, + ListTicketingTeamsResponseBody, + ListTicketingTeamsResponseBodyTypedDict, + ListTicketingTeamsResponseTypedDict, +) +from .listticketingticketop import ( + ListTicketingTicketRequest, + ListTicketingTicketRequestTypedDict, + ListTicketingTicketResponse, + ListTicketingTicketResponseBody, + ListTicketingTicketResponseBodyTypedDict, + ListTicketingTicketResponseTypedDict, +) +from .listticketingusersop import ( + ListTicketingUsersRequest, + ListTicketingUsersRequestTypedDict, + ListTicketingUsersResponse, + ListTicketingUsersResponseBody, + ListTicketingUsersResponseBodyTypedDict, + ListTicketingUsersResponseTypedDict, +) from .logindto import LoginDto, LoginDtoTypedDict from .mapfieldtoproviderdto import MapFieldToProviderDto, MapFieldToProviderDtoTypedDict -from .passthroughrequestdto import Data, DataTypedDict, Headers, HeadersTypedDict, PassThroughRequestDto, PassThroughRequestDtoMethod, PassThroughRequestDtoTypedDict, RequestFormat, RequestFormatTypedDict +from .passthroughrequestdto import ( + Data, + DataTypedDict, + PassThroughRequestDto, + PassThroughRequestDtoMethod, + PassThroughRequestDtoTypedDict, + RequestFormat, + RequestFormatTypedDict, +) from .phone import Phone, PhoneTypedDict from .projectresponse import ProjectResponse, ProjectResponseTypedDict from .querybody import QueryBody, QueryBodyTypedDict -from .queryop import QueryRequest, QueryRequestTypedDict, QueryResponseBody, QueryResponseBodyTypedDict +from .queryop import QueryRequest, QueryRequestTypedDict +from .ragqueryoutput import RagQueryOutput, RagQueryOutputTypedDict from .remoteidop import RemoteIDRequest, RemoteIDRequestTypedDict -from .requestop import RequestPassthroughResponseBody, RequestPassthroughResponseBodyTypedDict, RequestRequest, RequestRequestTypedDict, RequestResponse, RequestResponseBody, RequestResponseBodyTypedDict, RequestResponseTypedDict +from .requestop import ( + RequestRequest, + RequestRequestTypedDict, + RequestResponseBody, + RequestResponseBodyTypedDict, +) from .resyncstatusdto import ResyncStatusDto, ResyncStatusDtoTypedDict, Status, Vertical -from .retrieveaccountingaccountop import RetrieveAccountingAccountRequest, RetrieveAccountingAccountRequestTypedDict -from .retrieveaccountingaddressop import RetrieveAccountingAddressRequest, RetrieveAccountingAddressRequestTypedDict -from .retrieveaccountingattachmentop import RetrieveAccountingAttachmentRequest, RetrieveAccountingAttachmentRequestTypedDict -from .retrieveaccountingbalancesheetop import RetrieveAccountingBalanceSheetRequest, RetrieveAccountingBalanceSheetRequestTypedDict -from .retrieveaccountingcashflowstatementop import RetrieveAccountingCashflowStatementRequest, RetrieveAccountingCashflowStatementRequestTypedDict -from .retrieveaccountingcompanyinfoop import RetrieveAccountingCompanyInfoRequest, RetrieveAccountingCompanyInfoRequestTypedDict -from .retrieveaccountingcontactop import RetrieveAccountingContactRequest, RetrieveAccountingContactRequestTypedDict -from .retrieveaccountingcreditnoteop import RetrieveAccountingCreditNoteRequest, RetrieveAccountingCreditNoteRequestTypedDict -from .retrieveaccountingexpenseop import RetrieveAccountingExpenseRequest, RetrieveAccountingExpenseRequestTypedDict -from .retrieveaccountingincomestatementop import RetrieveAccountingIncomeStatementRequest, RetrieveAccountingIncomeStatementRequestTypedDict -from .retrieveaccountinginvoiceop import RetrieveAccountingInvoiceRequest, RetrieveAccountingInvoiceRequestTypedDict -from .retrieveaccountingitemop import RetrieveAccountingItemRequest, RetrieveAccountingItemRequestTypedDict -from .retrieveaccountingjournalentryop import RetrieveAccountingJournalEntryRequest, RetrieveAccountingJournalEntryRequestTypedDict -from .retrieveaccountingpaymentop import RetrieveAccountingPaymentRequest, RetrieveAccountingPaymentRequestTypedDict -from .retrieveaccountingphonenumberop import RetrieveAccountingPhonenumberRequest, RetrieveAccountingPhonenumberRequestTypedDict -from .retrieveaccountingpurchaseorderop import RetrieveAccountingPurchaseOrderRequest, RetrieveAccountingPurchaseOrderRequestTypedDict -from .retrieveaccountingtaxrateop import RetrieveAccountingTaxRateRequest, RetrieveAccountingTaxRateRequestTypedDict -from .retrieveaccountingtrackingcategoryop import RetrieveAccountingTrackingCategoryRequest, RetrieveAccountingTrackingCategoryRequestTypedDict -from .retrieveaccountingtransactionop import RetrieveAccountingTransactionRequest, RetrieveAccountingTransactionRequestTypedDict -from .retrieveaccountingvendorcreditop import RetrieveAccountingVendorCreditRequest, RetrieveAccountingVendorCreditRequestTypedDict -from .retrieveatsactivityop import RetrieveAtsActivityRequest, RetrieveAtsActivityRequestTypedDict -from .retrieveatsapplicationop import RetrieveAtsApplicationRequest, RetrieveAtsApplicationRequestTypedDict -from .retrieveatsattachmentop import RetrieveAtsAttachmentRequest, RetrieveAtsAttachmentRequestTypedDict -from .retrieveatscandidateop import RetrieveAtsCandidateRequest, RetrieveAtsCandidateRequestTypedDict -from .retrieveatsdepartmentop import RetrieveAtsDepartmentRequest, RetrieveAtsDepartmentRequestTypedDict -from .retrieveatseeocsop import RetrieveAtsEeocsRequest, RetrieveAtsEeocsRequestTypedDict -from .retrieveatsinterviewop import RetrieveAtsInterviewRequest, RetrieveAtsInterviewRequestTypedDict -from .retrieveatsjobinterviewstageop import RetrieveAtsJobInterviewStageRequest, RetrieveAtsJobInterviewStageRequestTypedDict -from .retrieveatsjobop import RetrieveAtsJobRequest, RetrieveAtsJobRequestTypedDict -from .retrieveatsofferop import RetrieveAtsOfferRequest, RetrieveAtsOfferRequestTypedDict -from .retrieveatsofficeop import RetrieveAtsOfficeRequest, RetrieveAtsOfficeRequestTypedDict -from .retrieveatsrejectreasonop import RetrieveAtsRejectReasonRequest, RetrieveAtsRejectReasonRequestTypedDict -from .retrieveatsscorecardop import RetrieveAtsScorecardRequest, RetrieveAtsScorecardRequestTypedDict -from .retrieveatstagop import RetrieveAtsTagRequest, RetrieveAtsTagRequestTypedDict -from .retrieveatsuserop import RetrieveAtsUserRequest, RetrieveAtsUserRequestTypedDict -from .retrievecollectionop import RetrieveCollectionRequest, RetrieveCollectionRequestTypedDict -from .retrievecrmcompanyop import RetrieveCrmCompanyRequest, RetrieveCrmCompanyRequestTypedDict -from .retrievecrmcontactop import RetrieveCrmContactRequest, RetrieveCrmContactRequestTypedDict +from .retrieveaccountingaccountop import ( + RetrieveAccountingAccountRequest, + RetrieveAccountingAccountRequestTypedDict, +) +from .retrieveaccountingaddressop import ( + RetrieveAccountingAddressRequest, + RetrieveAccountingAddressRequestTypedDict, +) +from .retrieveaccountingattachmentop import ( + RetrieveAccountingAttachmentRequest, + RetrieveAccountingAttachmentRequestTypedDict, +) +from .retrieveaccountingbalancesheetop import ( + RetrieveAccountingBalanceSheetRequest, + RetrieveAccountingBalanceSheetRequestTypedDict, +) +from .retrieveaccountingcashflowstatementop import ( + RetrieveAccountingCashflowStatementRequest, + RetrieveAccountingCashflowStatementRequestTypedDict, +) +from .retrieveaccountingcompanyinfoop import ( + RetrieveAccountingCompanyInfoRequest, + RetrieveAccountingCompanyInfoRequestTypedDict, +) +from .retrieveaccountingcontactop import ( + RetrieveAccountingContactRequest, + RetrieveAccountingContactRequestTypedDict, +) +from .retrieveaccountingcreditnoteop import ( + RetrieveAccountingCreditNoteRequest, + RetrieveAccountingCreditNoteRequestTypedDict, +) +from .retrieveaccountingexpenseop import ( + RetrieveAccountingExpenseRequest, + RetrieveAccountingExpenseRequestTypedDict, +) +from .retrieveaccountingincomestatementop import ( + RetrieveAccountingIncomeStatementRequest, + RetrieveAccountingIncomeStatementRequestTypedDict, +) +from .retrieveaccountinginvoiceop import ( + RetrieveAccountingInvoiceRequest, + RetrieveAccountingInvoiceRequestTypedDict, +) +from .retrieveaccountingitemop import ( + RetrieveAccountingItemRequest, + RetrieveAccountingItemRequestTypedDict, +) +from .retrieveaccountingjournalentryop import ( + RetrieveAccountingJournalEntryRequest, + RetrieveAccountingJournalEntryRequestTypedDict, +) +from .retrieveaccountingpaymentop import ( + RetrieveAccountingPaymentRequest, + RetrieveAccountingPaymentRequestTypedDict, +) +from .retrieveaccountingphonenumberop import ( + RetrieveAccountingPhonenumberRequest, + RetrieveAccountingPhonenumberRequestTypedDict, +) +from .retrieveaccountingpurchaseorderop import ( + RetrieveAccountingPurchaseOrderRequest, + RetrieveAccountingPurchaseOrderRequestTypedDict, +) +from .retrieveaccountingtaxrateop import ( + RetrieveAccountingTaxRateRequest, + RetrieveAccountingTaxRateRequestTypedDict, +) +from .retrieveaccountingtrackingcategoryop import ( + RetrieveAccountingTrackingCategoryRequest, + RetrieveAccountingTrackingCategoryRequestTypedDict, +) +from .retrieveaccountingtransactionop import ( + RetrieveAccountingTransactionRequest, + RetrieveAccountingTransactionRequestTypedDict, +) +from .retrieveaccountingvendorcreditop import ( + RetrieveAccountingVendorCreditRequest, + RetrieveAccountingVendorCreditRequestTypedDict, +) +from .retrievecollectionop import ( + RetrieveCollectionRequest, + RetrieveCollectionRequestTypedDict, +) +from .retrievecrmcompanyop import ( + RetrieveCrmCompanyRequest, + RetrieveCrmCompanyRequestTypedDict, +) +from .retrievecrmcontactop import ( + RetrieveCrmContactRequest, + RetrieveCrmContactRequestTypedDict, +) from .retrievecrmdealop import RetrieveCrmDealRequest, RetrieveCrmDealRequestTypedDict -from .retrievecrmengagementop import RetrieveCrmEngagementRequest, RetrieveCrmEngagementRequestTypedDict +from .retrievecrmengagementop import ( + RetrieveCrmEngagementRequest, + RetrieveCrmEngagementRequestTypedDict, +) from .retrievecrmnoteop import RetrieveCrmNoteRequest, RetrieveCrmNoteRequestTypedDict -from .retrievecrmstageop import RetrieveCrmStageRequest, RetrieveCrmStageRequestTypedDict +from .retrievecrmstageop import ( + RetrieveCrmStageRequest, + RetrieveCrmStageRequestTypedDict, +) from .retrievecrmtaskop import RetrieveCrmTaskRequest, RetrieveCrmTaskRequestTypedDict from .retrievecrmuserop import RetrieveCrmUserRequest, RetrieveCrmUserRequestTypedDict -from .retrieveecommercecustomerop import RetrieveEcommerceCustomerRequest, RetrieveEcommerceCustomerRequestTypedDict -from .retrieveecommercefulfillmentop import RetrieveEcommerceFulfillmentRequest, RetrieveEcommerceFulfillmentRequestTypedDict -from .retrieveecommerceorderop import RetrieveEcommerceOrderRequest, RetrieveEcommerceOrderRequestTypedDict -from .retrieveecommerceproductop import RetrieveEcommerceProductRequest, RetrieveEcommerceProductRequestTypedDict -from .retrievefilestoragefileop import RetrieveFilestorageFileRequest, RetrieveFilestorageFileRequestTypedDict -from .retrievefilestoragefolderop import RetrieveFilestorageFolderRequest, RetrieveFilestorageFolderRequestTypedDict -from .retrievefilestoragegroupop import RetrieveFilestorageGroupRequest, RetrieveFilestorageGroupRequestTypedDict -from .retrievefilestorageuserop import RetrieveFilestorageUserRequest, RetrieveFilestorageUserRequestTypedDict -from .retrievehrisbankinfoop import RetrieveHrisBankInfoRequest, RetrieveHrisBankInfoRequestTypedDict -from .retrievehrisbenefitop import RetrieveHrisBenefitRequest, RetrieveHrisBenefitRequestTypedDict -from .retrievehriscompanyop import RetrieveHrisCompanyRequest, RetrieveHrisCompanyRequestTypedDict -from .retrievehrisdependentop import RetrieveHrisDependentRequest, RetrieveHrisDependentRequestTypedDict -from .retrievehrisemployeeop import RetrieveHrisEmployeeRequest, RetrieveHrisEmployeeRequestTypedDict -from .retrievehrisemployeepayrollrunop import RetrieveHrisEmployeePayrollRunRequest, RetrieveHrisEmployeePayrollRunRequestTypedDict -from .retrievehrisemployerbenefitop import RetrieveHrisEmployerBenefitRequest, RetrieveHrisEmployerBenefitRequestTypedDict -from .retrievehrisemploymentop import RetrieveHrisEmploymentRequest, RetrieveHrisEmploymentRequestTypedDict -from .retrievehrisgroupop import RetrieveHrisGroupRequest, RetrieveHrisGroupRequestTypedDict -from .retrievehrislocationop import RetrieveHrisLocationRequest, RetrieveHrisLocationRequestTypedDict -from .retrievehrispaygroupop import RetrieveHrisPaygroupRequest, RetrieveHrisPaygroupRequestTypedDict -from .retrievehrispayrollrunop import RetrieveHrisPayrollRunRequest, RetrieveHrisPayrollRunRequestTypedDict -from .retrievehristimeoffbalanceop import RetrieveHrisTimeoffbalanceRequest, RetrieveHrisTimeoffbalanceRequestTypedDict -from .retrievehristimeoffop import RetrieveHrisTimeoffRequest, RetrieveHrisTimeoffRequestTypedDict -from .retrievehristimesheetentryop import RetrieveHrisTimesheetentryRequest, RetrieveHrisTimesheetentryRequestTypedDict -from .retrievelinkeduserop import RetrieveLinkedUserRequest, RetrieveLinkedUserRequestTypedDict -from .retrievemarketingautomationactionop import RetrieveMarketingautomationActionRequest, RetrieveMarketingautomationActionRequestTypedDict -from .retrievemarketingautomationautomationop import RetrieveMarketingautomationAutomationRequest, RetrieveMarketingautomationAutomationRequestTypedDict -from .retrievemarketingautomationcampaignop import RetrieveMarketingautomationCampaignRequest, RetrieveMarketingautomationCampaignRequestTypedDict -from .retrievemarketingautomationcontactop import RetrieveMarketingAutomationContactRequest, RetrieveMarketingAutomationContactRequestTypedDict -from .retrievemarketingautomationemailop import RetrieveMarketingautomationEmailRequest, RetrieveMarketingautomationEmailRequestTypedDict -from .retrievemarketingautomationeventop import RetrieveMarketingautomationEventRequest, RetrieveMarketingautomationEventRequestTypedDict -from .retrievemarketingautomationlistop import RetrieveMarketingautomationListRequest, RetrieveMarketingautomationListRequestTypedDict -from .retrievemarketingautomationmessageop import RetrieveMarketingautomationMessageRequest, RetrieveMarketingautomationMessageRequestTypedDict -from .retrievemarketingautomationtemplateop import RetrieveMarketingautomationTemplateRequest, RetrieveMarketingautomationTemplateRequestTypedDict -from .retrievemarketingautomationuserop import RetrieveMarketingAutomationUserRequest, RetrieveMarketingAutomationUserRequestTypedDict -from .retrieveticketingaccountop import RetrieveTicketingAccountRequest, RetrieveTicketingAccountRequestTypedDict -from .retrieveticketingattachmentop import RetrieveTicketingAttachmentRequest, RetrieveTicketingAttachmentRequestTypedDict -from .retrieveticketingcommentop import RetrieveTicketingCommentRequest, RetrieveTicketingCommentRequestTypedDict, RetrieveTicketingCommentResponseBody, RetrieveTicketingCommentResponseBodyTypedDict -from .retrieveticketingcontactop import RetrieveTicketingContactRequest, RetrieveTicketingContactRequestTypedDict, RetrieveTicketingContactResponseBody, RetrieveTicketingContactResponseBodyTypedDict -from .retrieveticketingtagop import RetrieveTicketingTagRequest, RetrieveTicketingTagRequestTypedDict -from .retrieveticketingteamop import RetrieveTicketingTeamRequest, RetrieveTicketingTeamRequestTypedDict -from .retrieveticketingticketop import RetrieveTicketingTicketRequest, RetrieveTicketingTicketRequestTypedDict -from .retrieveticketinguserop import RetrieveTicketingUserRequest, RetrieveTicketingUserRequestTypedDict +from .retrieveecommercecustomerop import ( + RetrieveEcommerceCustomerRequest, + RetrieveEcommerceCustomerRequestTypedDict, +) +from .retrieveecommercefulfillmentop import ( + RetrieveEcommerceFulfillmentRequest, + RetrieveEcommerceFulfillmentRequestTypedDict, +) +from .retrieveecommerceorderop import ( + RetrieveEcommerceOrderRequest, + RetrieveEcommerceOrderRequestTypedDict, +) +from .retrieveecommerceproductop import ( + RetrieveEcommerceProductRequest, + RetrieveEcommerceProductRequestTypedDict, +) +from .retrievefilestoragefileop import ( + RetrieveFilestorageFileRequest, + RetrieveFilestorageFileRequestTypedDict, +) +from .retrievefilestoragefolderop import ( + RetrieveFilestorageFolderRequest, + RetrieveFilestorageFolderRequestTypedDict, +) +from .retrievefilestoragegroupop import ( + RetrieveFilestorageGroupRequest, + RetrieveFilestorageGroupRequestTypedDict, +) +from .retrievefilestorageuserop import ( + RetrieveFilestorageUserRequest, + RetrieveFilestorageUserRequestTypedDict, +) +from .retrievelinkeduserop import ( + RetrieveLinkedUserRequest, + RetrieveLinkedUserRequestTypedDict, +) +from .retrievemarketingautomationactionop import ( + RetrieveMarketingautomationActionRequest, + RetrieveMarketingautomationActionRequestTypedDict, +) +from .retrievemarketingautomationautomationop import ( + RetrieveMarketingautomationAutomationRequest, + RetrieveMarketingautomationAutomationRequestTypedDict, +) +from .retrievemarketingautomationcampaignop import ( + RetrieveMarketingautomationCampaignRequest, + RetrieveMarketingautomationCampaignRequestTypedDict, +) +from .retrievemarketingautomationcontactop import ( + RetrieveMarketingAutomationContactRequest, + RetrieveMarketingAutomationContactRequestTypedDict, +) +from .retrievemarketingautomationemailop import ( + RetrieveMarketingautomationEmailRequest, + RetrieveMarketingautomationEmailRequestTypedDict, +) +from .retrievemarketingautomationeventop import ( + RetrieveMarketingautomationEventRequest, + RetrieveMarketingautomationEventRequestTypedDict, +) +from .retrievemarketingautomationlistop import ( + RetrieveMarketingautomationListRequest, + RetrieveMarketingautomationListRequestTypedDict, +) +from .retrievemarketingautomationmessageop import ( + RetrieveMarketingautomationMessageRequest, + RetrieveMarketingautomationMessageRequestTypedDict, +) +from .retrievemarketingautomationtemplateop import ( + RetrieveMarketingautomationTemplateRequest, + RetrieveMarketingautomationTemplateRequestTypedDict, +) +from .retrievemarketingautomationuserop import ( + RetrieveMarketingAutomationUserRequest, + RetrieveMarketingAutomationUserRequestTypedDict, +) +from .retrieveticketingaccountop import ( + RetrieveTicketingAccountRequest, + RetrieveTicketingAccountRequestTypedDict, +) +from .retrieveticketingattachmentop import ( + RetrieveTicketingAttachmentRequest, + RetrieveTicketingAttachmentRequestTypedDict, +) +from .retrieveticketingcommentop import ( + RetrieveTicketingCommentRequest, + RetrieveTicketingCommentRequestTypedDict, + RetrieveTicketingCommentResponseBody, + RetrieveTicketingCommentResponseBodyTypedDict, +) +from .retrieveticketingcontactop import ( + RetrieveTicketingContactRequest, + RetrieveTicketingContactRequestTypedDict, + RetrieveTicketingContactResponseBody, + RetrieveTicketingContactResponseBodyTypedDict, +) +from .retrieveticketingtagop import ( + RetrieveTicketingTagRequest, + RetrieveTicketingTagRequestTypedDict, +) +from .retrieveticketingteamop import ( + RetrieveTicketingTeamRequest, + RetrieveTicketingTeamRequestTypedDict, +) +from .retrieveticketingticketop import ( + RetrieveTicketingTicketRequest, + RetrieveTicketingTicketRequestTypedDict, +) +from .retrieveticketinguserop import ( + RetrieveTicketingUserRequest, + RetrieveTicketingUserRequestTypedDict, +) from .sdkerror import SDKError from .security import Security, SecurityTypedDict -from .signatureverificationdto import SignatureVerificationDto, SignatureVerificationDtoTypedDict +from .signatureverificationdto import ( + SignatureVerificationDto, + SignatureVerificationDtoTypedDict, +) from .statusop import PathParamVertical, StatusRequest, StatusRequestTypedDict -from .taxitem import TaxItem, TaxItemTypedDict -from .unifiedaccountingaccountinput import UnifiedAccountingAccountInput, UnifiedAccountingAccountInputFieldMappings, UnifiedAccountingAccountInputFieldMappingsTypedDict, UnifiedAccountingAccountInputTypedDict -from .unifiedaccountingaccountoutput import UnifiedAccountingAccountOutput, UnifiedAccountingAccountOutputFieldMappings, UnifiedAccountingAccountOutputFieldMappingsTypedDict, UnifiedAccountingAccountOutputRemoteData, UnifiedAccountingAccountOutputRemoteDataTypedDict, UnifiedAccountingAccountOutputTypedDict -from .unifiedaccountingaddressoutput import UnifiedAccountingAddressOutput, UnifiedAccountingAddressOutputFieldMappings, UnifiedAccountingAddressOutputFieldMappingsTypedDict, UnifiedAccountingAddressOutputRemoteData, UnifiedAccountingAddressOutputRemoteDataTypedDict, UnifiedAccountingAddressOutputTypedDict -from .unifiedaccountingattachmentinput import UnifiedAccountingAttachmentInput, UnifiedAccountingAttachmentInputFieldMappings, UnifiedAccountingAttachmentInputFieldMappingsTypedDict, UnifiedAccountingAttachmentInputTypedDict -from .unifiedaccountingattachmentoutput import UnifiedAccountingAttachmentOutput, UnifiedAccountingAttachmentOutputFieldMappings, UnifiedAccountingAttachmentOutputFieldMappingsTypedDict, UnifiedAccountingAttachmentOutputRemoteData, UnifiedAccountingAttachmentOutputRemoteDataTypedDict, UnifiedAccountingAttachmentOutputTypedDict -from .unifiedaccountingbalancesheetoutput import UnifiedAccountingBalancesheetOutput, UnifiedAccountingBalancesheetOutputFieldMappings, UnifiedAccountingBalancesheetOutputFieldMappingsTypedDict, UnifiedAccountingBalancesheetOutputRemoteData, UnifiedAccountingBalancesheetOutputRemoteDataTypedDict, UnifiedAccountingBalancesheetOutputTypedDict -from .unifiedaccountingcashflowstatementoutput import UnifiedAccountingCashflowstatementOutput, UnifiedAccountingCashflowstatementOutputFieldMappings, UnifiedAccountingCashflowstatementOutputFieldMappingsTypedDict, UnifiedAccountingCashflowstatementOutputRemoteData, UnifiedAccountingCashflowstatementOutputRemoteDataTypedDict, UnifiedAccountingCashflowstatementOutputTypedDict -from .unifiedaccountingcompanyinfooutput import UnifiedAccountingCompanyinfoOutput, UnifiedAccountingCompanyinfoOutputFieldMappings, UnifiedAccountingCompanyinfoOutputFieldMappingsTypedDict, UnifiedAccountingCompanyinfoOutputRemoteData, UnifiedAccountingCompanyinfoOutputRemoteDataTypedDict, UnifiedAccountingCompanyinfoOutputTypedDict -from .unifiedaccountingcontactinput import UnifiedAccountingContactInput, UnifiedAccountingContactInputFieldMappings, UnifiedAccountingContactInputFieldMappingsTypedDict, UnifiedAccountingContactInputTypedDict -from .unifiedaccountingcontactoutput import UnifiedAccountingContactOutput, UnifiedAccountingContactOutputFieldMappings, UnifiedAccountingContactOutputFieldMappingsTypedDict, UnifiedAccountingContactOutputRemoteData, UnifiedAccountingContactOutputRemoteDataTypedDict, UnifiedAccountingContactOutputTypedDict -from .unifiedaccountingcreditnoteoutput import UnifiedAccountingCreditnoteOutput, UnifiedAccountingCreditnoteOutputFieldMappings, UnifiedAccountingCreditnoteOutputFieldMappingsTypedDict, UnifiedAccountingCreditnoteOutputRemoteData, UnifiedAccountingCreditnoteOutputRemoteDataTypedDict, UnifiedAccountingCreditnoteOutputTypedDict -from .unifiedaccountingexpenseinput import UnifiedAccountingExpenseInput, UnifiedAccountingExpenseInputFieldMappings, UnifiedAccountingExpenseInputFieldMappingsTypedDict, UnifiedAccountingExpenseInputTypedDict -from .unifiedaccountingexpenseoutput import UnifiedAccountingExpenseOutput, UnifiedAccountingExpenseOutputFieldMappings, UnifiedAccountingExpenseOutputFieldMappingsTypedDict, UnifiedAccountingExpenseOutputRemoteData, UnifiedAccountingExpenseOutputRemoteDataTypedDict, UnifiedAccountingExpenseOutputTypedDict -from .unifiedaccountingincomestatementoutput import UnifiedAccountingIncomestatementOutput, UnifiedAccountingIncomestatementOutputFieldMappings, UnifiedAccountingIncomestatementOutputFieldMappingsTypedDict, UnifiedAccountingIncomestatementOutputRemoteData, UnifiedAccountingIncomestatementOutputRemoteDataTypedDict, UnifiedAccountingIncomestatementOutputTypedDict -from .unifiedaccountinginvoiceinput import UnifiedAccountingInvoiceInput, UnifiedAccountingInvoiceInputFieldMappings, UnifiedAccountingInvoiceInputFieldMappingsTypedDict, UnifiedAccountingInvoiceInputTypedDict -from .unifiedaccountinginvoiceoutput import UnifiedAccountingInvoiceOutput, UnifiedAccountingInvoiceOutputFieldMappings, UnifiedAccountingInvoiceOutputFieldMappingsTypedDict, UnifiedAccountingInvoiceOutputRemoteData, UnifiedAccountingInvoiceOutputRemoteDataTypedDict, UnifiedAccountingInvoiceOutputTypedDict -from .unifiedaccountingitemoutput import UnifiedAccountingItemOutput, UnifiedAccountingItemOutputFieldMappings, UnifiedAccountingItemOutputFieldMappingsTypedDict, UnifiedAccountingItemOutputRemoteData, UnifiedAccountingItemOutputRemoteDataTypedDict, UnifiedAccountingItemOutputTypedDict -from .unifiedaccountingjournalentryinput import UnifiedAccountingJournalentryInput, UnifiedAccountingJournalentryInputFieldMappings, UnifiedAccountingJournalentryInputFieldMappingsTypedDict, UnifiedAccountingJournalentryInputTypedDict -from .unifiedaccountingjournalentryoutput import UnifiedAccountingJournalentryOutput, UnifiedAccountingJournalentryOutputFieldMappings, UnifiedAccountingJournalentryOutputFieldMappingsTypedDict, UnifiedAccountingJournalentryOutputRemoteData, UnifiedAccountingJournalentryOutputRemoteDataTypedDict, UnifiedAccountingJournalentryOutputTypedDict -from .unifiedaccountingpaymentinput import UnifiedAccountingPaymentInput, UnifiedAccountingPaymentInputFieldMappings, UnifiedAccountingPaymentInputFieldMappingsTypedDict, UnifiedAccountingPaymentInputTypedDict -from .unifiedaccountingpaymentoutput import UnifiedAccountingPaymentOutput, UnifiedAccountingPaymentOutputFieldMappings, UnifiedAccountingPaymentOutputFieldMappingsTypedDict, UnifiedAccountingPaymentOutputRemoteData, UnifiedAccountingPaymentOutputRemoteDataTypedDict, UnifiedAccountingPaymentOutputTypedDict -from .unifiedaccountingphonenumberoutput import UnifiedAccountingPhonenumberOutput, UnifiedAccountingPhonenumberOutputFieldMappings, UnifiedAccountingPhonenumberOutputFieldMappingsTypedDict, UnifiedAccountingPhonenumberOutputRemoteData, UnifiedAccountingPhonenumberOutputRemoteDataTypedDict, UnifiedAccountingPhonenumberOutputTypedDict -from .unifiedaccountingpurchaseorderinput import UnifiedAccountingPurchaseorderInput, UnifiedAccountingPurchaseorderInputFieldMappings, UnifiedAccountingPurchaseorderInputFieldMappingsTypedDict, UnifiedAccountingPurchaseorderInputTypedDict -from .unifiedaccountingpurchaseorderoutput import UnifiedAccountingPurchaseorderOutput, UnifiedAccountingPurchaseorderOutputFieldMappings, UnifiedAccountingPurchaseorderOutputFieldMappingsTypedDict, UnifiedAccountingPurchaseorderOutputRemoteData, UnifiedAccountingPurchaseorderOutputRemoteDataTypedDict, UnifiedAccountingPurchaseorderOutputTypedDict -from .unifiedaccountingtaxrateoutput import UnifiedAccountingTaxrateOutput, UnifiedAccountingTaxrateOutputFieldMappings, UnifiedAccountingTaxrateOutputFieldMappingsTypedDict, UnifiedAccountingTaxrateOutputRemoteData, UnifiedAccountingTaxrateOutputRemoteDataTypedDict, UnifiedAccountingTaxrateOutputTypedDict -from .unifiedaccountingtrackingcategoryoutput import UnifiedAccountingTrackingcategoryOutput, UnifiedAccountingTrackingcategoryOutputFieldMappings, UnifiedAccountingTrackingcategoryOutputFieldMappingsTypedDict, UnifiedAccountingTrackingcategoryOutputRemoteData, UnifiedAccountingTrackingcategoryOutputRemoteDataTypedDict, UnifiedAccountingTrackingcategoryOutputTypedDict -from .unifiedaccountingtransactionoutput import UnifiedAccountingTransactionOutput, UnifiedAccountingTransactionOutputFieldMappings, UnifiedAccountingTransactionOutputFieldMappingsTypedDict, UnifiedAccountingTransactionOutputRemoteData, UnifiedAccountingTransactionOutputRemoteDataTypedDict, UnifiedAccountingTransactionOutputTypedDict -from .unifiedaccountingvendorcreditoutput import UnifiedAccountingVendorcreditOutput, UnifiedAccountingVendorcreditOutputFieldMappings, UnifiedAccountingVendorcreditOutputFieldMappingsTypedDict, UnifiedAccountingVendorcreditOutputRemoteData, UnifiedAccountingVendorcreditOutputRemoteDataTypedDict, UnifiedAccountingVendorcreditOutputTypedDict -from .unifiedatsactivityinput import UnifiedAtsActivityInput, UnifiedAtsActivityInputTypedDict -from .unifiedatsactivityoutput import UnifiedAtsActivityOutput, UnifiedAtsActivityOutputTypedDict -from .unifiedatsapplicationinput import UnifiedAtsApplicationInput, UnifiedAtsApplicationInputTypedDict -from .unifiedatsapplicationoutput import UnifiedAtsApplicationOutput, UnifiedAtsApplicationOutputTypedDict -from .unifiedatsattachmentinput import UnifiedAtsAttachmentInput, UnifiedAtsAttachmentInputTypedDict -from .unifiedatsattachmentoutput import UnifiedAtsAttachmentOutput, UnifiedAtsAttachmentOutputTypedDict -from .unifiedatscandidateinput import UnifiedAtsCandidateInput, UnifiedAtsCandidateInputApplications, UnifiedAtsCandidateInputApplicationsTypedDict, UnifiedAtsCandidateInputAttachments, UnifiedAtsCandidateInputAttachmentsTypedDict, UnifiedAtsCandidateInputTags, UnifiedAtsCandidateInputTagsTypedDict, UnifiedAtsCandidateInputTypedDict -from .unifiedatscandidateoutput import ApplicationsModel, ApplicationsModelTypedDict, UnifiedAtsCandidateOutput, UnifiedAtsCandidateOutputAttachments, UnifiedAtsCandidateOutputAttachmentsTypedDict, UnifiedAtsCandidateOutputTags, UnifiedAtsCandidateOutputTagsTypedDict, UnifiedAtsCandidateOutputTypedDict -from .unifiedatsdepartmentoutput import UnifiedAtsDepartmentOutput, UnifiedAtsDepartmentOutputTypedDict -from .unifiedatseeocsoutput import UnifiedAtsEeocsOutput, UnifiedAtsEeocsOutputTypedDict -from .unifiedatsinterviewinput import UnifiedAtsInterviewInput, UnifiedAtsInterviewInputTypedDict -from .unifiedatsinterviewoutput import UnifiedAtsInterviewOutput, UnifiedAtsInterviewOutputTypedDict -from .unifiedatsjobinterviewstageoutput import UnifiedAtsJobinterviewstageOutput, UnifiedAtsJobinterviewstageOutputTypedDict -from .unifiedatsjoboutput import UnifiedAtsJobOutput, UnifiedAtsJobOutputTypedDict -from .unifiedatsofferoutput import UnifiedAtsOfferOutput, UnifiedAtsOfferOutputCreatedAt, UnifiedAtsOfferOutputCreatedAtTypedDict, UnifiedAtsOfferOutputModifiedAt, UnifiedAtsOfferOutputModifiedAtTypedDict, UnifiedAtsOfferOutputTypedDict -from .unifiedatsofficeoutput import UnifiedAtsOfficeOutput, UnifiedAtsOfficeOutputTypedDict -from .unifiedatsrejectreasonoutput import UnifiedAtsRejectreasonOutput, UnifiedAtsRejectreasonOutputTypedDict -from .unifiedatsscorecardoutput import UnifiedAtsScorecardOutput, UnifiedAtsScorecardOutputTypedDict -from .unifiedatstagoutput import UnifiedAtsTagOutput, UnifiedAtsTagOutputTypedDict -from .unifiedatsuseroutput import UnifiedAtsUserOutput, UnifiedAtsUserOutputTypedDict -from .unifiedcrmcompanyinput import UnifiedCrmCompanyInput, UnifiedCrmCompanyInputTypedDict -from .unifiedcrmcompanyoutput import CreatedAt, CreatedAtTypedDict, ModifiedAt, ModifiedAtTypedDict, UnifiedCrmCompanyOutput, UnifiedCrmCompanyOutputTypedDict -from .unifiedcrmcontactinput import UnifiedCrmContactInput, UnifiedCrmContactInputTypedDict -from .unifiedcrmcontactoutput import UnifiedCrmContactOutput, UnifiedCrmContactOutputTypedDict +from .unifiedaccountingaccountinput import ( + UnifiedAccountingAccountInput, + UnifiedAccountingAccountInputFieldMappings, + UnifiedAccountingAccountInputFieldMappingsTypedDict, + UnifiedAccountingAccountInputTypedDict, +) +from .unifiedaccountingaccountoutput import ( + FieldMappingsModel, + FieldMappingsModelTypedDict, + RemoteData, + RemoteDataTypedDict, + UnifiedAccountingAccountOutput, + UnifiedAccountingAccountOutputTypedDict, +) +from .unifiedaccountingaddressoutput import ( + UnifiedAccountingAddressOutput, + UnifiedAccountingAddressOutputFieldMappings, + UnifiedAccountingAddressOutputFieldMappingsTypedDict, + UnifiedAccountingAddressOutputRemoteData, + UnifiedAccountingAddressOutputRemoteDataTypedDict, + UnifiedAccountingAddressOutputTypedDict, +) +from .unifiedaccountingattachmentinput import ( + UnifiedAccountingAttachmentInput, + UnifiedAccountingAttachmentInputFieldMappings, + UnifiedAccountingAttachmentInputFieldMappingsTypedDict, + UnifiedAccountingAttachmentInputTypedDict, +) +from .unifiedaccountingattachmentoutput import ( + UnifiedAccountingAttachmentOutput, + UnifiedAccountingAttachmentOutputFieldMappings, + UnifiedAccountingAttachmentOutputFieldMappingsTypedDict, + UnifiedAccountingAttachmentOutputRemoteData, + UnifiedAccountingAttachmentOutputRemoteDataTypedDict, + UnifiedAccountingAttachmentOutputTypedDict, +) +from .unifiedaccountingbalancesheetoutput import ( + UnifiedAccountingBalancesheetOutput, + UnifiedAccountingBalancesheetOutputFieldMappings, + UnifiedAccountingBalancesheetOutputFieldMappingsTypedDict, + UnifiedAccountingBalancesheetOutputRemoteData, + UnifiedAccountingBalancesheetOutputRemoteDataTypedDict, + UnifiedAccountingBalancesheetOutputTypedDict, +) +from .unifiedaccountingcashflowstatementoutput import ( + UnifiedAccountingCashflowstatementOutput, + UnifiedAccountingCashflowstatementOutputFieldMappings, + UnifiedAccountingCashflowstatementOutputFieldMappingsTypedDict, + UnifiedAccountingCashflowstatementOutputRemoteData, + UnifiedAccountingCashflowstatementOutputRemoteDataTypedDict, + UnifiedAccountingCashflowstatementOutputTypedDict, +) +from .unifiedaccountingcompanyinfooutput import ( + UnifiedAccountingCompanyinfoOutput, + UnifiedAccountingCompanyinfoOutputFieldMappings, + UnifiedAccountingCompanyinfoOutputFieldMappingsTypedDict, + UnifiedAccountingCompanyinfoOutputRemoteData, + UnifiedAccountingCompanyinfoOutputRemoteDataTypedDict, + UnifiedAccountingCompanyinfoOutputTypedDict, +) +from .unifiedaccountingcontactinput import ( + UnifiedAccountingContactInput, + UnifiedAccountingContactInputFieldMappings, + UnifiedAccountingContactInputFieldMappingsTypedDict, + UnifiedAccountingContactInputTypedDict, +) +from .unifiedaccountingcontactoutput import ( + UnifiedAccountingContactOutput, + UnifiedAccountingContactOutputFieldMappings, + UnifiedAccountingContactOutputFieldMappingsTypedDict, + UnifiedAccountingContactOutputRemoteData, + UnifiedAccountingContactOutputRemoteDataTypedDict, + UnifiedAccountingContactOutputTypedDict, +) +from .unifiedaccountingcreditnoteoutput import ( + UnifiedAccountingCreditnoteOutput, + UnifiedAccountingCreditnoteOutputFieldMappings, + UnifiedAccountingCreditnoteOutputFieldMappingsTypedDict, + UnifiedAccountingCreditnoteOutputRemoteData, + UnifiedAccountingCreditnoteOutputRemoteDataTypedDict, + UnifiedAccountingCreditnoteOutputTypedDict, +) +from .unifiedaccountingexpenseinput import ( + UnifiedAccountingExpenseInput, + UnifiedAccountingExpenseInputFieldMappings, + UnifiedAccountingExpenseInputFieldMappingsTypedDict, + UnifiedAccountingExpenseInputTypedDict, +) +from .unifiedaccountingexpenseoutput import ( + UnifiedAccountingExpenseOutput, + UnifiedAccountingExpenseOutputFieldMappings, + UnifiedAccountingExpenseOutputFieldMappingsTypedDict, + UnifiedAccountingExpenseOutputRemoteData, + UnifiedAccountingExpenseOutputRemoteDataTypedDict, + UnifiedAccountingExpenseOutputTypedDict, +) +from .unifiedaccountingincomestatementoutput import ( + UnifiedAccountingIncomestatementOutput, + UnifiedAccountingIncomestatementOutputFieldMappings, + UnifiedAccountingIncomestatementOutputFieldMappingsTypedDict, + UnifiedAccountingIncomestatementOutputRemoteData, + UnifiedAccountingIncomestatementOutputRemoteDataTypedDict, + UnifiedAccountingIncomestatementOutputTypedDict, +) +from .unifiedaccountinginvoiceinput import ( + UnifiedAccountingInvoiceInput, + UnifiedAccountingInvoiceInputFieldMappings, + UnifiedAccountingInvoiceInputFieldMappingsTypedDict, + UnifiedAccountingInvoiceInputTypedDict, +) +from .unifiedaccountinginvoiceoutput import ( + UnifiedAccountingInvoiceOutput, + UnifiedAccountingInvoiceOutputFieldMappings, + UnifiedAccountingInvoiceOutputFieldMappingsTypedDict, + UnifiedAccountingInvoiceOutputRemoteData, + UnifiedAccountingInvoiceOutputRemoteDataTypedDict, + UnifiedAccountingInvoiceOutputTypedDict, +) +from .unifiedaccountingitemoutput import ( + UnifiedAccountingItemOutput, + UnifiedAccountingItemOutputFieldMappings, + UnifiedAccountingItemOutputFieldMappingsTypedDict, + UnifiedAccountingItemOutputRemoteData, + UnifiedAccountingItemOutputRemoteDataTypedDict, + UnifiedAccountingItemOutputTypedDict, +) +from .unifiedaccountingjournalentryinput import ( + UnifiedAccountingJournalentryInput, + UnifiedAccountingJournalentryInputFieldMappings, + UnifiedAccountingJournalentryInputFieldMappingsTypedDict, + UnifiedAccountingJournalentryInputTypedDict, +) +from .unifiedaccountingjournalentryoutput import ( + UnifiedAccountingJournalentryOutput, + UnifiedAccountingJournalentryOutputFieldMappings, + UnifiedAccountingJournalentryOutputFieldMappingsTypedDict, + UnifiedAccountingJournalentryOutputRemoteData, + UnifiedAccountingJournalentryOutputRemoteDataTypedDict, + UnifiedAccountingJournalentryOutputTypedDict, +) +from .unifiedaccountingpaymentinput import ( + UnifiedAccountingPaymentInput, + UnifiedAccountingPaymentInputFieldMappings, + UnifiedAccountingPaymentInputFieldMappingsTypedDict, + UnifiedAccountingPaymentInputTypedDict, +) +from .unifiedaccountingpaymentoutput import ( + UnifiedAccountingPaymentOutput, + UnifiedAccountingPaymentOutputFieldMappings, + UnifiedAccountingPaymentOutputFieldMappingsTypedDict, + UnifiedAccountingPaymentOutputRemoteData, + UnifiedAccountingPaymentOutputRemoteDataTypedDict, + UnifiedAccountingPaymentOutputTypedDict, +) +from .unifiedaccountingphonenumberoutput import ( + UnifiedAccountingPhonenumberOutput, + UnifiedAccountingPhonenumberOutputFieldMappings, + UnifiedAccountingPhonenumberOutputFieldMappingsTypedDict, + UnifiedAccountingPhonenumberOutputRemoteData, + UnifiedAccountingPhonenumberOutputRemoteDataTypedDict, + UnifiedAccountingPhonenumberOutputTypedDict, +) +from .unifiedaccountingpurchaseorderinput import ( + UnifiedAccountingPurchaseorderInput, + UnifiedAccountingPurchaseorderInputFieldMappings, + UnifiedAccountingPurchaseorderInputFieldMappingsTypedDict, + UnifiedAccountingPurchaseorderInputTypedDict, +) +from .unifiedaccountingpurchaseorderoutput import ( + UnifiedAccountingPurchaseorderOutput, + UnifiedAccountingPurchaseorderOutputFieldMappings, + UnifiedAccountingPurchaseorderOutputFieldMappingsTypedDict, + UnifiedAccountingPurchaseorderOutputRemoteData, + UnifiedAccountingPurchaseorderOutputRemoteDataTypedDict, + UnifiedAccountingPurchaseorderOutputTypedDict, +) +from .unifiedaccountingtaxrateoutput import ( + UnifiedAccountingTaxrateOutput, + UnifiedAccountingTaxrateOutputFieldMappings, + UnifiedAccountingTaxrateOutputFieldMappingsTypedDict, + UnifiedAccountingTaxrateOutputRemoteData, + UnifiedAccountingTaxrateOutputRemoteDataTypedDict, + UnifiedAccountingTaxrateOutputTypedDict, +) +from .unifiedaccountingtrackingcategoryoutput import ( + UnifiedAccountingTrackingcategoryOutput, + UnifiedAccountingTrackingcategoryOutputFieldMappings, + UnifiedAccountingTrackingcategoryOutputFieldMappingsTypedDict, + UnifiedAccountingTrackingcategoryOutputRemoteData, + UnifiedAccountingTrackingcategoryOutputRemoteDataTypedDict, + UnifiedAccountingTrackingcategoryOutputTypedDict, +) +from .unifiedaccountingtransactionoutput import ( + UnifiedAccountingTransactionOutput, + UnifiedAccountingTransactionOutputFieldMappings, + UnifiedAccountingTransactionOutputFieldMappingsTypedDict, + UnifiedAccountingTransactionOutputRemoteData, + UnifiedAccountingTransactionOutputRemoteDataTypedDict, + UnifiedAccountingTransactionOutputTypedDict, +) +from .unifiedaccountingvendorcreditoutput import ( + UnifiedAccountingVendorcreditOutput, + UnifiedAccountingVendorcreditOutputFieldMappings, + UnifiedAccountingVendorcreditOutputFieldMappingsTypedDict, + UnifiedAccountingVendorcreditOutputRemoteData, + UnifiedAccountingVendorcreditOutputRemoteDataTypedDict, + UnifiedAccountingVendorcreditOutputTypedDict, +) +from .unifiedcrmcompanyinput import ( + UnifiedCrmCompanyInput, + UnifiedCrmCompanyInputTypedDict, +) +from .unifiedcrmcompanyoutput import ( + CreatedAt, + CreatedAtTypedDict, + ModifiedAt, + ModifiedAtTypedDict, + UnifiedCrmCompanyOutput, + UnifiedCrmCompanyOutputTypedDict, +) +from .unifiedcrmcontactinput import ( + UnifiedCrmContactInput, + UnifiedCrmContactInputTypedDict, +) +from .unifiedcrmcontactoutput import ( + UnifiedCrmContactOutput, + UnifiedCrmContactOutputTypedDict, +) from .unifiedcrmdealinput import UnifiedCrmDealInput, UnifiedCrmDealInputTypedDict from .unifiedcrmdealoutput import UnifiedCrmDealOutput, UnifiedCrmDealOutputTypedDict -from .unifiedcrmengagementinput import UnifiedCrmEngagementInput, UnifiedCrmEngagementInputTypedDict -from .unifiedcrmengagementoutput import UnifiedCrmEngagementOutput, UnifiedCrmEngagementOutputTypedDict +from .unifiedcrmengagementinput import ( + UnifiedCrmEngagementInput, + UnifiedCrmEngagementInputTypedDict, +) +from .unifiedcrmengagementoutput import ( + UnifiedCrmEngagementOutput, + UnifiedCrmEngagementOutputTypedDict, +) from .unifiedcrmnoteinput import UnifiedCrmNoteInput, UnifiedCrmNoteInputTypedDict from .unifiedcrmnoteoutput import UnifiedCrmNoteOutput, UnifiedCrmNoteOutputTypedDict -from .unifiedcrmstageoutput import UnifiedCrmStageOutput, UnifiedCrmStageOutputCreatedAt, UnifiedCrmStageOutputCreatedAtTypedDict, UnifiedCrmStageOutputModifiedAt, UnifiedCrmStageOutputModifiedAtTypedDict, UnifiedCrmStageOutputTypedDict +from .unifiedcrmstageoutput import ( + UnifiedCrmStageOutput, + UnifiedCrmStageOutputCreatedAt, + UnifiedCrmStageOutputCreatedAtTypedDict, + UnifiedCrmStageOutputModifiedAt, + UnifiedCrmStageOutputModifiedAtTypedDict, + UnifiedCrmStageOutputTypedDict, +) from .unifiedcrmtaskinput import UnifiedCrmTaskInput, UnifiedCrmTaskInputTypedDict from .unifiedcrmtaskoutput import UnifiedCrmTaskOutput, UnifiedCrmTaskOutputTypedDict from .unifiedcrmuseroutput import UnifiedCrmUserOutput, UnifiedCrmUserOutputTypedDict -from .unifiedecommercecustomeroutput import UnifiedEcommerceCustomerOutput, UnifiedEcommerceCustomerOutputFieldMappings, UnifiedEcommerceCustomerOutputFieldMappingsTypedDict, UnifiedEcommerceCustomerOutputRemoteData, UnifiedEcommerceCustomerOutputRemoteDataTypedDict, UnifiedEcommerceCustomerOutputTypedDict -from .unifiedecommercefulfillmentoutput import ItemsModel, ItemsModelTypedDict, UnifiedEcommerceFulfillmentOutput, UnifiedEcommerceFulfillmentOutputFieldMappings, UnifiedEcommerceFulfillmentOutputFieldMappingsTypedDict, UnifiedEcommerceFulfillmentOutputRemoteData, UnifiedEcommerceFulfillmentOutputRemoteDataTypedDict, UnifiedEcommerceFulfillmentOutputTypedDict -from .unifiedecommerceorderinput import UnifiedEcommerceOrderInput, UnifiedEcommerceOrderInputFieldMappings, UnifiedEcommerceOrderInputFieldMappingsTypedDict, UnifiedEcommerceOrderInputTypedDict -from .unifiedecommerceorderoutput import UnifiedEcommerceOrderOutput, UnifiedEcommerceOrderOutputFieldMappings, UnifiedEcommerceOrderOutputFieldMappingsTypedDict, UnifiedEcommerceOrderOutputRemoteData, UnifiedEcommerceOrderOutputRemoteDataTypedDict, UnifiedEcommerceOrderOutputTypedDict -from .unifiedecommerceproductinput import UnifiedEcommerceProductInput, UnifiedEcommerceProductInputFieldMappings, UnifiedEcommerceProductInputFieldMappingsTypedDict, UnifiedEcommerceProductInputTypedDict -from .unifiedecommerceproductoutput import UnifiedEcommerceProductOutput, UnifiedEcommerceProductOutputFieldMappings, UnifiedEcommerceProductOutputFieldMappingsTypedDict, UnifiedEcommerceProductOutputRemoteData, UnifiedEcommerceProductOutputRemoteDataTypedDict, UnifiedEcommerceProductOutputTypedDict -from .unifiedfilestoragefileinput import UnifiedFilestorageFileInput, UnifiedFilestorageFileInputTypedDict -from .unifiedfilestoragefileoutput import UnifiedFilestorageFileOutput, UnifiedFilestorageFileOutputTypedDict -from .unifiedfilestoragefolderinput import UnifiedFilestorageFolderInput, UnifiedFilestorageFolderInputTypedDict -from .unifiedfilestoragefolderoutput import UnifiedFilestorageFolderOutput, UnifiedFilestorageFolderOutputTypedDict -from .unifiedfilestoragegroupoutput import UnifiedFilestorageGroupOutput, UnifiedFilestorageGroupOutputTypedDict, UsersModel, UsersModelTypedDict -from .unifiedfilestorageuseroutput import UnifiedFilestorageUserOutput, UnifiedFilestorageUserOutputTypedDict -from .unifiedhrisbankinfooutput import FieldMappingsModel, FieldMappingsModelTypedDict, RemoteData, RemoteDataTypedDict, UnifiedHrisBankinfoOutput, UnifiedHrisBankinfoOutputTypedDict -from .unifiedhrisbenefitoutput import UnifiedHrisBenefitOutput, UnifiedHrisBenefitOutputFieldMappings, UnifiedHrisBenefitOutputFieldMappingsTypedDict, UnifiedHrisBenefitOutputRemoteData, UnifiedHrisBenefitOutputRemoteDataTypedDict, UnifiedHrisBenefitOutputTypedDict -from .unifiedhriscompanyoutput import UnifiedHrisCompanyOutput, UnifiedHrisCompanyOutputFieldMappings, UnifiedHrisCompanyOutputFieldMappingsTypedDict, UnifiedHrisCompanyOutputRemoteData, UnifiedHrisCompanyOutputRemoteDataTypedDict, UnifiedHrisCompanyOutputTypedDict -from .unifiedhrisdependentoutput import UnifiedHrisDependentOutput, UnifiedHrisDependentOutputFieldMappings, UnifiedHrisDependentOutputFieldMappingsTypedDict, UnifiedHrisDependentOutputRemoteData, UnifiedHrisDependentOutputRemoteDataTypedDict, UnifiedHrisDependentOutputTypedDict -from .unifiedhrisemployeeinput import UnifiedHrisEmployeeInput, UnifiedHrisEmployeeInputFieldMappings, UnifiedHrisEmployeeInputFieldMappingsTypedDict, UnifiedHrisEmployeeInputTypedDict -from .unifiedhrisemployeeoutput import UnifiedHrisEmployeeOutput, UnifiedHrisEmployeeOutputFieldMappings, UnifiedHrisEmployeeOutputFieldMappingsTypedDict, UnifiedHrisEmployeeOutputRemoteData, UnifiedHrisEmployeeOutputRemoteDataTypedDict, UnifiedHrisEmployeeOutputTypedDict -from .unifiedhrisemployeepayrollrunoutput import UnifiedHrisEmployeepayrollrunOutput, UnifiedHrisEmployeepayrollrunOutputFieldMappings, UnifiedHrisEmployeepayrollrunOutputFieldMappingsTypedDict, UnifiedHrisEmployeepayrollrunOutputRemoteData, UnifiedHrisEmployeepayrollrunOutputRemoteDataTypedDict, UnifiedHrisEmployeepayrollrunOutputTypedDict -from .unifiedhrisemployerbenefitoutput import UnifiedHrisEmployerbenefitOutput, UnifiedHrisEmployerbenefitOutputFieldMappings, UnifiedHrisEmployerbenefitOutputFieldMappingsTypedDict, UnifiedHrisEmployerbenefitOutputRemoteData, UnifiedHrisEmployerbenefitOutputRemoteDataTypedDict, UnifiedHrisEmployerbenefitOutputTypedDict -from .unifiedhrisemploymentoutput import UnifiedHrisEmploymentOutput, UnifiedHrisEmploymentOutputFieldMappings, UnifiedHrisEmploymentOutputFieldMappingsTypedDict, UnifiedHrisEmploymentOutputRemoteData, UnifiedHrisEmploymentOutputRemoteDataTypedDict, UnifiedHrisEmploymentOutputTypedDict -from .unifiedhrisgroupoutput import UnifiedHrisGroupOutput, UnifiedHrisGroupOutputFieldMappings, UnifiedHrisGroupOutputFieldMappingsTypedDict, UnifiedHrisGroupOutputRemoteData, UnifiedHrisGroupOutputRemoteDataTypedDict, UnifiedHrisGroupOutputTypedDict -from .unifiedhrislocationoutput import UnifiedHrisLocationOutput, UnifiedHrisLocationOutputFieldMappings, UnifiedHrisLocationOutputFieldMappingsTypedDict, UnifiedHrisLocationOutputRemoteData, UnifiedHrisLocationOutputRemoteDataTypedDict, UnifiedHrisLocationOutputTypedDict -from .unifiedhrispaygroupoutput import UnifiedHrisPaygroupOutput, UnifiedHrisPaygroupOutputFieldMappings, UnifiedHrisPaygroupOutputFieldMappingsTypedDict, UnifiedHrisPaygroupOutputRemoteData, UnifiedHrisPaygroupOutputRemoteDataTypedDict, UnifiedHrisPaygroupOutputTypedDict -from .unifiedhrispayrollrunoutput import UnifiedHrisPayrollrunOutput, UnifiedHrisPayrollrunOutputFieldMappings, UnifiedHrisPayrollrunOutputFieldMappingsTypedDict, UnifiedHrisPayrollrunOutputRemoteData, UnifiedHrisPayrollrunOutputRemoteDataTypedDict, UnifiedHrisPayrollrunOutputTypedDict -from .unifiedhristimeoffbalanceoutput import UnifiedHrisTimeoffbalanceOutput, UnifiedHrisTimeoffbalanceOutputFieldMappings, UnifiedHrisTimeoffbalanceOutputFieldMappingsTypedDict, UnifiedHrisTimeoffbalanceOutputRemoteData, UnifiedHrisTimeoffbalanceOutputRemoteDataTypedDict, UnifiedHrisTimeoffbalanceOutputTypedDict -from .unifiedhristimeoffinput import UnifiedHrisTimeoffInput, UnifiedHrisTimeoffInputFieldMappings, UnifiedHrisTimeoffInputFieldMappingsTypedDict, UnifiedHrisTimeoffInputTypedDict -from .unifiedhristimeoffoutput import UnifiedHrisTimeoffOutput, UnifiedHrisTimeoffOutputFieldMappings, UnifiedHrisTimeoffOutputFieldMappingsTypedDict, UnifiedHrisTimeoffOutputRemoteData, UnifiedHrisTimeoffOutputRemoteDataTypedDict, UnifiedHrisTimeoffOutputTypedDict -from .unifiedhristimesheetentryinput import UnifiedHrisTimesheetEntryInput, UnifiedHrisTimesheetEntryInputFieldMappings, UnifiedHrisTimesheetEntryInputFieldMappingsTypedDict, UnifiedHrisTimesheetEntryInputTypedDict -from .unifiedhristimesheetentryoutput import UnifiedHrisTimesheetEntryOutput, UnifiedHrisTimesheetEntryOutputFieldMappings, UnifiedHrisTimesheetEntryOutputFieldMappingsTypedDict, UnifiedHrisTimesheetEntryOutputRemoteData, UnifiedHrisTimesheetEntryOutputRemoteDataTypedDict, UnifiedHrisTimesheetEntryOutputTypedDict -from .unifiedmarketingautomationactioninput import UnifiedMarketingautomationActionInput, UnifiedMarketingautomationActionInputTypedDict -from .unifiedmarketingautomationactionoutput import UnifiedMarketingautomationActionOutput, UnifiedMarketingautomationActionOutputTypedDict -from .unifiedmarketingautomationautomationinput import UnifiedMarketingautomationAutomationInput, UnifiedMarketingautomationAutomationInputTypedDict -from .unifiedmarketingautomationautomationoutput import UnifiedMarketingautomationAutomationOutput, UnifiedMarketingautomationAutomationOutputTypedDict -from .unifiedmarketingautomationcampaigninput import UnifiedMarketingautomationCampaignInput, UnifiedMarketingautomationCampaignInputTypedDict -from .unifiedmarketingautomationcampaignoutput import UnifiedMarketingautomationCampaignOutput, UnifiedMarketingautomationCampaignOutputTypedDict -from .unifiedmarketingautomationcontactinput import UnifiedMarketingautomationContactInput, UnifiedMarketingautomationContactInputTypedDict -from .unifiedmarketingautomationcontactoutput import UnifiedMarketingautomationContactOutput, UnifiedMarketingautomationContactOutputTypedDict -from .unifiedmarketingautomationemailoutput import UnifiedMarketingautomationEmailOutput, UnifiedMarketingautomationEmailOutputTypedDict -from .unifiedmarketingautomationeventoutput import UnifiedMarketingautomationEventOutput, UnifiedMarketingautomationEventOutputTypedDict -from .unifiedmarketingautomationlistinput import UnifiedMarketingautomationListInput, UnifiedMarketingautomationListInputTypedDict -from .unifiedmarketingautomationlistoutput import UnifiedMarketingautomationListOutput, UnifiedMarketingautomationListOutputTypedDict -from .unifiedmarketingautomationmessageoutput import UnifiedMarketingautomationMessageOutput, UnifiedMarketingautomationMessageOutputTypedDict -from .unifiedmarketingautomationtemplateinput import UnifiedMarketingautomationTemplateInput, UnifiedMarketingautomationTemplateInputTypedDict -from .unifiedmarketingautomationtemplateoutput import UnifiedMarketingautomationTemplateOutput, UnifiedMarketingautomationTemplateOutputTypedDict -from .unifiedmarketingautomationuseroutput import UnifiedMarketingautomationUserOutput, UnifiedMarketingautomationUserOutputTypedDict -from .unifiedticketingaccountoutput import UnifiedTicketingAccountOutput, UnifiedTicketingAccountOutputTypedDict -from .unifiedticketingattachmentinput import UnifiedTicketingAttachmentInput, UnifiedTicketingAttachmentInputTypedDict -from .unifiedticketingattachmentoutput import UnifiedTicketingAttachmentOutput, UnifiedTicketingAttachmentOutputTypedDict -from .unifiedticketingcollectionoutput import UnifiedTicketingCollectionOutput, UnifiedTicketingCollectionOutputTypedDict -from .unifiedticketingcommentinput import UnifiedTicketingCommentInput, UnifiedTicketingCommentInputAttachments, UnifiedTicketingCommentInputAttachmentsTypedDict, UnifiedTicketingCommentInputTypedDict -from .unifiedticketingcommentoutput import UnifiedTicketingCommentOutput, UnifiedTicketingCommentOutputAttachments, UnifiedTicketingCommentOutputAttachmentsTypedDict, UnifiedTicketingCommentOutputTypedDict -from .unifiedticketingcontactoutput import UnifiedTicketingContactOutput, UnifiedTicketingContactOutputTypedDict -from .unifiedticketingtagoutput import UnifiedTicketingTagOutput, UnifiedTicketingTagOutputTypedDict -from .unifiedticketingteamoutput import UnifiedTicketingTeamOutput, UnifiedTicketingTeamOutputTypedDict -from .unifiedticketingticketinput import UnifiedTicketingTicketInput, UnifiedTicketingTicketInputAttachments, UnifiedTicketingTicketInputAttachmentsTypedDict, UnifiedTicketingTicketInputCollections, UnifiedTicketingTicketInputCollectionsTypedDict, UnifiedTicketingTicketInputComment, UnifiedTicketingTicketInputCommentAttachments, UnifiedTicketingTicketInputCommentAttachmentsTypedDict, UnifiedTicketingTicketInputCommentTypedDict, UnifiedTicketingTicketInputTags, UnifiedTicketingTicketInputTagsTypedDict, UnifiedTicketingTicketInputTypedDict -from .unifiedticketingticketoutput import AttachmentsModel, AttachmentsModelTypedDict, CollectionsModel, CollectionsModelTypedDict, Comment, CommentTypedDict, TagsModel, TagsModelTypedDict, UnifiedTicketingTicketOutput, UnifiedTicketingTicketOutputAttachments, UnifiedTicketingTicketOutputAttachmentsTypedDict, UnifiedTicketingTicketOutputTypedDict -from .unifiedticketinguseroutput import UnifiedTicketingUserOutput, UnifiedTicketingUserOutputTypedDict -from .updatepullfrequencydto import UpdatePullFrequencyDto, UpdatePullFrequencyDtoTypedDict -from .updatepullfrequencyop import UpdatePullFrequencyResponseBody, UpdatePullFrequencyResponseBodyTypedDict +from .unifiedecommercecustomeroutput import ( + UnifiedEcommerceCustomerOutput, + UnifiedEcommerceCustomerOutputFieldMappings, + UnifiedEcommerceCustomerOutputFieldMappingsTypedDict, + UnifiedEcommerceCustomerOutputRemoteData, + UnifiedEcommerceCustomerOutputRemoteDataTypedDict, + UnifiedEcommerceCustomerOutputTypedDict, +) +from .unifiedecommercefulfillmentoutput import ( + ItemsModel, + ItemsModelTypedDict, + UnifiedEcommerceFulfillmentOutput, + UnifiedEcommerceFulfillmentOutputFieldMappings, + UnifiedEcommerceFulfillmentOutputFieldMappingsTypedDict, + UnifiedEcommerceFulfillmentOutputRemoteData, + UnifiedEcommerceFulfillmentOutputRemoteDataTypedDict, + UnifiedEcommerceFulfillmentOutputTypedDict, +) +from .unifiedecommerceorderinput import ( + UnifiedEcommerceOrderInput, + UnifiedEcommerceOrderInputFieldMappings, + UnifiedEcommerceOrderInputFieldMappingsTypedDict, + UnifiedEcommerceOrderInputTypedDict, +) +from .unifiedecommerceorderoutput import ( + UnifiedEcommerceOrderOutput, + UnifiedEcommerceOrderOutputFieldMappings, + UnifiedEcommerceOrderOutputFieldMappingsTypedDict, + UnifiedEcommerceOrderOutputRemoteData, + UnifiedEcommerceOrderOutputRemoteDataTypedDict, + UnifiedEcommerceOrderOutputTypedDict, +) +from .unifiedecommerceproductinput import ( + UnifiedEcommerceProductInput, + UnifiedEcommerceProductInputFieldMappings, + UnifiedEcommerceProductInputFieldMappingsTypedDict, + UnifiedEcommerceProductInputTypedDict, +) +from .unifiedecommerceproductoutput import ( + UnifiedEcommerceProductOutput, + UnifiedEcommerceProductOutputFieldMappings, + UnifiedEcommerceProductOutputFieldMappingsTypedDict, + UnifiedEcommerceProductOutputRemoteData, + UnifiedEcommerceProductOutputRemoteDataTypedDict, + UnifiedEcommerceProductOutputTypedDict, +) +from .unifiedfilestoragefileinput import ( + UnifiedFilestorageFileInput, + UnifiedFilestorageFileInputTypedDict, +) +from .unifiedfilestoragefileoutput import ( + UnifiedFilestorageFileOutput, + UnifiedFilestorageFileOutputTypedDict, +) +from .unifiedfilestoragefolderinput import ( + UnifiedFilestorageFolderInput, + UnifiedFilestorageFolderInputTypedDict, +) +from .unifiedfilestoragefolderoutput import ( + UnifiedFilestorageFolderOutput, + UnifiedFilestorageFolderOutputTypedDict, +) +from .unifiedfilestoragegroupoutput import ( + UnifiedFilestorageGroupOutput, + UnifiedFilestorageGroupOutputTypedDict, + UsersModel, + UsersModelTypedDict, +) +from .unifiedfilestorageuseroutput import ( + UnifiedFilestorageUserOutput, + UnifiedFilestorageUserOutputTypedDict, +) +from .unifiedmarketingautomationactioninput import ( + UnifiedMarketingautomationActionInput, + UnifiedMarketingautomationActionInputTypedDict, +) +from .unifiedmarketingautomationactionoutput import ( + UnifiedMarketingautomationActionOutput, + UnifiedMarketingautomationActionOutputTypedDict, +) +from .unifiedmarketingautomationautomationinput import ( + UnifiedMarketingautomationAutomationInput, + UnifiedMarketingautomationAutomationInputTypedDict, +) +from .unifiedmarketingautomationautomationoutput import ( + UnifiedMarketingautomationAutomationOutput, + UnifiedMarketingautomationAutomationOutputTypedDict, +) +from .unifiedmarketingautomationcampaigninput import ( + UnifiedMarketingautomationCampaignInput, + UnifiedMarketingautomationCampaignInputTypedDict, +) +from .unifiedmarketingautomationcampaignoutput import ( + UnifiedMarketingautomationCampaignOutput, + UnifiedMarketingautomationCampaignOutputTypedDict, +) +from .unifiedmarketingautomationcontactinput import ( + UnifiedMarketingautomationContactInput, + UnifiedMarketingautomationContactInputTypedDict, +) +from .unifiedmarketingautomationcontactoutput import ( + UnifiedMarketingautomationContactOutput, + UnifiedMarketingautomationContactOutputTypedDict, +) +from .unifiedmarketingautomationemailoutput import ( + UnifiedMarketingautomationEmailOutput, + UnifiedMarketingautomationEmailOutputTypedDict, +) +from .unifiedmarketingautomationeventoutput import ( + UnifiedMarketingautomationEventOutput, + UnifiedMarketingautomationEventOutputTypedDict, +) +from .unifiedmarketingautomationlistinput import ( + UnifiedMarketingautomationListInput, + UnifiedMarketingautomationListInputTypedDict, +) +from .unifiedmarketingautomationlistoutput import ( + UnifiedMarketingautomationListOutput, + UnifiedMarketingautomationListOutputTypedDict, +) +from .unifiedmarketingautomationmessageoutput import ( + UnifiedMarketingautomationMessageOutput, + UnifiedMarketingautomationMessageOutputTypedDict, +) +from .unifiedmarketingautomationtemplateinput import ( + UnifiedMarketingautomationTemplateInput, + UnifiedMarketingautomationTemplateInputTypedDict, +) +from .unifiedmarketingautomationtemplateoutput import ( + UnifiedMarketingautomationTemplateOutput, + UnifiedMarketingautomationTemplateOutputTypedDict, +) +from .unifiedmarketingautomationuseroutput import ( + UnifiedMarketingautomationUserOutput, + UnifiedMarketingautomationUserOutputTypedDict, +) +from .unifiedticketingaccountoutput import ( + UnifiedTicketingAccountOutput, + UnifiedTicketingAccountOutputTypedDict, +) +from .unifiedticketingattachmentinput import ( + UnifiedTicketingAttachmentInput, + UnifiedTicketingAttachmentInputTypedDict, +) +from .unifiedticketingattachmentoutput import ( + UnifiedTicketingAttachmentOutput, + UnifiedTicketingAttachmentOutputTypedDict, +) +from .unifiedticketingcollectionoutput import ( + UnifiedTicketingCollectionOutput, + UnifiedTicketingCollectionOutputTypedDict, +) +from .unifiedticketingcommentinput import ( + UnifiedTicketingCommentInput, + UnifiedTicketingCommentInputAttachments, + UnifiedTicketingCommentInputAttachmentsTypedDict, + UnifiedTicketingCommentInputTypedDict, +) +from .unifiedticketingcommentoutput import ( + UnifiedTicketingCommentOutput, + UnifiedTicketingCommentOutputAttachments, + UnifiedTicketingCommentOutputAttachmentsTypedDict, + UnifiedTicketingCommentOutputTypedDict, +) +from .unifiedticketingcontactoutput import ( + UnifiedTicketingContactOutput, + UnifiedTicketingContactOutputTypedDict, +) +from .unifiedticketingtagoutput import ( + UnifiedTicketingTagOutput, + UnifiedTicketingTagOutputTypedDict, +) +from .unifiedticketingteamoutput import ( + UnifiedTicketingTeamOutput, + UnifiedTicketingTeamOutputTypedDict, +) +from .unifiedticketingticketinput import ( + UnifiedTicketingTicketInput, + UnifiedTicketingTicketInputAttachments, + UnifiedTicketingTicketInputAttachmentsTypedDict, + UnifiedTicketingTicketInputCollections, + UnifiedTicketingTicketInputCollectionsTypedDict, + UnifiedTicketingTicketInputComment, + UnifiedTicketingTicketInputCommentAttachments, + UnifiedTicketingTicketInputCommentAttachmentsTypedDict, + UnifiedTicketingTicketInputCommentTypedDict, + UnifiedTicketingTicketInputTags, + UnifiedTicketingTicketInputTagsTypedDict, + UnifiedTicketingTicketInputTypedDict, +) +from .unifiedticketingticketoutput import ( + AttachmentsModel, + AttachmentsModelTypedDict, + CollectionsModel, + CollectionsModelTypedDict, + Comment, + CommentTypedDict, + TagsModel, + TagsModelTypedDict, + UnifiedTicketingTicketOutput, + UnifiedTicketingTicketOutputAttachments, + UnifiedTicketingTicketOutputAttachmentsTypedDict, + UnifiedTicketingTicketOutputTypedDict, +) +from .unifiedticketinguseroutput import ( + UnifiedTicketingUserOutput, + UnifiedTicketingUserOutputTypedDict, +) +from .updatepullfrequencydto import ( + UpdatePullFrequencyDto, + UpdatePullFrequencyDtoTypedDict, +) from .updatestatusop import UpdateStatusRequest, UpdateStatusRequestTypedDict -from .url import URL, URLTypedDict from .variant import Variant, VariantTypedDict from .webhookdto import WebhookDto, WebhookDtoTypedDict from .webhookresponse import WebhookResponse, WebhookResponseTypedDict -__all__ = ["Address", "AddressTypedDict", "ApplicationsModel", "ApplicationsModelTypedDict", "AttachmentsModel", "AttachmentsModelTypedDict", "CollectionsModel", "CollectionsModelTypedDict", "Comment", "CommentTypedDict", "Connection", "ConnectionTypedDict", "CreateAccountingAccountRequest", "CreateAccountingAccountRequestTypedDict", "CreateAccountingAttachmentRequest", "CreateAccountingAttachmentRequestTypedDict", "CreateAccountingContactRequest", "CreateAccountingContactRequestTypedDict", "CreateAccountingExpenseRequest", "CreateAccountingExpenseRequestTypedDict", "CreateAccountingInvoiceRequest", "CreateAccountingInvoiceRequestTypedDict", "CreateAccountingJournalEntryRequest", "CreateAccountingJournalEntryRequestTypedDict", "CreateAccountingPaymentRequest", "CreateAccountingPaymentRequestTypedDict", "CreateAccountingPurchaseOrderRequest", "CreateAccountingPurchaseOrderRequestTypedDict", "CreateAtsActivityRequest", "CreateAtsActivityRequestTypedDict", "CreateAtsApplicationRequest", "CreateAtsApplicationRequestTypedDict", "CreateAtsAttachmentRequest", "CreateAtsAttachmentRequestTypedDict", "CreateAtsCandidateRequest", "CreateAtsCandidateRequestTypedDict", "CreateAtsInterviewRequest", "CreateAtsInterviewRequestTypedDict", "CreateBatchLinkedUserDto", "CreateBatchLinkedUserDtoTypedDict", "CreateCrmCompanyRequest", "CreateCrmCompanyRequestTypedDict", "CreateCrmContactRequest", "CreateCrmContactRequestTypedDict", "CreateCrmDealRequest", "CreateCrmDealRequestTypedDict", "CreateCrmEngagementRequest", "CreateCrmEngagementRequestTypedDict", "CreateCrmNoteRequest", "CreateCrmNoteRequestTypedDict", "CreateCrmTaskRequest", "CreateCrmTaskRequestTypedDict", "CreateEcommerceOrderRequest", "CreateEcommerceOrderRequestTypedDict", "CreateEcommerceProductRequest", "CreateEcommerceProductRequestTypedDict", "CreateFilestorageFileRequest", "CreateFilestorageFileRequestTypedDict", "CreateFilestorageFolderRequest", "CreateFilestorageFolderRequestTypedDict", "CreateHrisEmployeeRequest", "CreateHrisEmployeeRequestTypedDict", "CreateHrisTimeoffRequest", "CreateHrisTimeoffRequestTypedDict", "CreateHrisTimesheetentryRequest", "CreateHrisTimesheetentryRequestTypedDict", "CreateLinkedUserDto", "CreateLinkedUserDtoTypedDict", "CreateMarketingAutomationContactRequest", "CreateMarketingAutomationContactRequestTypedDict", "CreateMarketingautomationActionRequest", "CreateMarketingautomationActionRequestTypedDict", "CreateMarketingautomationAutomationRequest", "CreateMarketingautomationAutomationRequestTypedDict", "CreateMarketingautomationCampaignRequest", "CreateMarketingautomationCampaignRequestTypedDict", "CreateMarketingautomationListRequest", "CreateMarketingautomationListRequestTypedDict", "CreateMarketingautomationTemplateRequest", "CreateMarketingautomationTemplateRequestTypedDict", "CreateProjectDto", "CreateProjectDtoTypedDict", "CreateTicketingAttachmentRequest", "CreateTicketingAttachmentRequestTypedDict", "CreateTicketingCommentRequest", "CreateTicketingCommentRequestTypedDict", "CreateTicketingTicketRequest", "CreateTicketingTicketRequestTypedDict", "CreatedAt", "CreatedAtTypedDict", "CustomFieldCreateDto", "CustomFieldCreateDtoDataType", "CustomFieldCreateDtoObjectTypeOwner", "CustomFieldCreateDtoTypedDict", "CustomFieldResponse", "CustomFieldResponseDataType", "CustomFieldResponseTypedDict", "Data", "DataType", "DataTypedDict", "DeductionItem", "DeductionItemTypedDict", "DefineTargetFieldDto", "DefineTargetFieldDtoTypedDict", "DeleteRequest", "DeleteRequestTypedDict", "EarningItem", "EarningItemTypedDict", "Email", "EmailTypedDict", "EventResponse", "EventResponseStatus", "EventResponseTypedDict", "FieldMappingsModel", "FieldMappingsModelTypedDict", "GetPanoraCoreEventsRequest", "GetPanoraCoreEventsRequestTypedDict", "GetRetriedRequestResponseRequest", "GetRetriedRequestResponseRequestTypedDict", "Headers", "HeadersTypedDict", "ItemsModel", "ItemsModelTypedDict", "LineItem", "LineItemTypedDict", "LinkedUserResponse", "LinkedUserResponseTypedDict", "ListAccountingAccountsRequest", "ListAccountingAccountsRequestTypedDict", "ListAccountingAccountsResponse", "ListAccountingAccountsResponseBody", "ListAccountingAccountsResponseBodyTypedDict", "ListAccountingAccountsResponseTypedDict", "ListAccountingAddressRequest", "ListAccountingAddressRequestTypedDict", "ListAccountingAddressResponse", "ListAccountingAddressResponseBody", "ListAccountingAddressResponseBodyTypedDict", "ListAccountingAddressResponseTypedDict", "ListAccountingAttachmentsRequest", "ListAccountingAttachmentsRequestTypedDict", "ListAccountingAttachmentsResponse", "ListAccountingAttachmentsResponseBody", "ListAccountingAttachmentsResponseBodyTypedDict", "ListAccountingAttachmentsResponseTypedDict", "ListAccountingBalanceSheetsRequest", "ListAccountingBalanceSheetsRequestTypedDict", "ListAccountingBalanceSheetsResponse", "ListAccountingBalanceSheetsResponseBody", "ListAccountingBalanceSheetsResponseBodyTypedDict", "ListAccountingBalanceSheetsResponseTypedDict", "ListAccountingCashflowStatementRequest", "ListAccountingCashflowStatementRequestTypedDict", "ListAccountingCashflowStatementResponse", "ListAccountingCashflowStatementResponseBody", "ListAccountingCashflowStatementResponseBodyTypedDict", "ListAccountingCashflowStatementResponseTypedDict", "ListAccountingCompanyInfosRequest", "ListAccountingCompanyInfosRequestTypedDict", "ListAccountingCompanyInfosResponse", "ListAccountingCompanyInfosResponseBody", "ListAccountingCompanyInfosResponseBodyTypedDict", "ListAccountingCompanyInfosResponseTypedDict", "ListAccountingContactsRequest", "ListAccountingContactsRequestTypedDict", "ListAccountingContactsResponse", "ListAccountingContactsResponseBody", "ListAccountingContactsResponseBodyTypedDict", "ListAccountingContactsResponseTypedDict", "ListAccountingCreditNoteRequest", "ListAccountingCreditNoteRequestTypedDict", "ListAccountingCreditNoteResponse", "ListAccountingCreditNoteResponseBody", "ListAccountingCreditNoteResponseBodyTypedDict", "ListAccountingCreditNoteResponseTypedDict", "ListAccountingExpenseRequest", "ListAccountingExpenseRequestTypedDict", "ListAccountingExpenseResponse", "ListAccountingExpenseResponseBody", "ListAccountingExpenseResponseBodyTypedDict", "ListAccountingExpenseResponseTypedDict", "ListAccountingIncomeStatementRequest", "ListAccountingIncomeStatementRequestTypedDict", "ListAccountingIncomeStatementResponse", "ListAccountingIncomeStatementResponseBody", "ListAccountingIncomeStatementResponseBodyTypedDict", "ListAccountingIncomeStatementResponseTypedDict", "ListAccountingInvoiceRequest", "ListAccountingInvoiceRequestTypedDict", "ListAccountingInvoiceResponse", "ListAccountingInvoiceResponseBody", "ListAccountingInvoiceResponseBodyTypedDict", "ListAccountingInvoiceResponseTypedDict", "ListAccountingItemRequest", "ListAccountingItemRequestTypedDict", "ListAccountingItemResponse", "ListAccountingItemResponseBody", "ListAccountingItemResponseBodyTypedDict", "ListAccountingItemResponseTypedDict", "ListAccountingJournalEntryRequest", "ListAccountingJournalEntryRequestTypedDict", "ListAccountingJournalEntryResponse", "ListAccountingJournalEntryResponseBody", "ListAccountingJournalEntryResponseBodyTypedDict", "ListAccountingJournalEntryResponseTypedDict", "ListAccountingPaymentRequest", "ListAccountingPaymentRequestTypedDict", "ListAccountingPaymentResponse", "ListAccountingPaymentResponseBody", "ListAccountingPaymentResponseBodyTypedDict", "ListAccountingPaymentResponseTypedDict", "ListAccountingPhonenumberRequest", "ListAccountingPhonenumberRequestTypedDict", "ListAccountingPhonenumberResponse", "ListAccountingPhonenumberResponseBody", "ListAccountingPhonenumberResponseBodyTypedDict", "ListAccountingPhonenumberResponseTypedDict", "ListAccountingPurchaseOrderRequest", "ListAccountingPurchaseOrderRequestTypedDict", "ListAccountingPurchaseOrderResponse", "ListAccountingPurchaseOrderResponseBody", "ListAccountingPurchaseOrderResponseBodyTypedDict", "ListAccountingPurchaseOrderResponseTypedDict", "ListAccountingTaxRateRequest", "ListAccountingTaxRateRequestTypedDict", "ListAccountingTaxRateResponse", "ListAccountingTaxRateResponseBody", "ListAccountingTaxRateResponseBodyTypedDict", "ListAccountingTaxRateResponseTypedDict", "ListAccountingTrackingCategorysRequest", "ListAccountingTrackingCategorysRequestTypedDict", "ListAccountingTrackingCategorysResponse", "ListAccountingTrackingCategorysResponseBody", "ListAccountingTrackingCategorysResponseBodyTypedDict", "ListAccountingTrackingCategorysResponseTypedDict", "ListAccountingTransactionRequest", "ListAccountingTransactionRequestTypedDict", "ListAccountingTransactionResponse", "ListAccountingTransactionResponseBody", "ListAccountingTransactionResponseBodyTypedDict", "ListAccountingTransactionResponseTypedDict", "ListAccountingVendorCreditRequest", "ListAccountingVendorCreditRequestTypedDict", "ListAccountingVendorCreditResponse", "ListAccountingVendorCreditResponseBody", "ListAccountingVendorCreditResponseBodyTypedDict", "ListAccountingVendorCreditResponseTypedDict", "ListAtsActivityRequest", "ListAtsActivityRequestTypedDict", "ListAtsActivityResponse", "ListAtsActivityResponseBody", "ListAtsActivityResponseBodyTypedDict", "ListAtsActivityResponseTypedDict", "ListAtsApplicationRequest", "ListAtsApplicationRequestTypedDict", "ListAtsApplicationResponse", "ListAtsApplicationResponseBody", "ListAtsApplicationResponseBodyTypedDict", "ListAtsApplicationResponseTypedDict", "ListAtsAttachmentRequest", "ListAtsAttachmentRequestTypedDict", "ListAtsAttachmentResponse", "ListAtsAttachmentResponseBody", "ListAtsAttachmentResponseBodyTypedDict", "ListAtsAttachmentResponseTypedDict", "ListAtsCandidateRequest", "ListAtsCandidateRequestTypedDict", "ListAtsCandidateResponse", "ListAtsCandidateResponseBody", "ListAtsCandidateResponseBodyTypedDict", "ListAtsCandidateResponseTypedDict", "ListAtsDepartmentsRequest", "ListAtsDepartmentsRequestTypedDict", "ListAtsDepartmentsResponse", "ListAtsDepartmentsResponseBody", "ListAtsDepartmentsResponseBodyTypedDict", "ListAtsDepartmentsResponseTypedDict", "ListAtsEeocsRequest", "ListAtsEeocsRequestTypedDict", "ListAtsEeocsResponse", "ListAtsEeocsResponseBody", "ListAtsEeocsResponseBodyTypedDict", "ListAtsEeocsResponseTypedDict", "ListAtsInterviewRequest", "ListAtsInterviewRequestTypedDict", "ListAtsInterviewResponse", "ListAtsInterviewResponseBody", "ListAtsInterviewResponseBodyTypedDict", "ListAtsInterviewResponseTypedDict", "ListAtsJobInterviewStageRequest", "ListAtsJobInterviewStageRequestTypedDict", "ListAtsJobInterviewStageResponse", "ListAtsJobInterviewStageResponseBody", "ListAtsJobInterviewStageResponseBodyTypedDict", "ListAtsJobInterviewStageResponseTypedDict", "ListAtsJobRequest", "ListAtsJobRequestTypedDict", "ListAtsJobResponse", "ListAtsJobResponseBody", "ListAtsJobResponseBodyTypedDict", "ListAtsJobResponseTypedDict", "ListAtsOfferRequest", "ListAtsOfferRequestTypedDict", "ListAtsOfferResponse", "ListAtsOfferResponseBody", "ListAtsOfferResponseBodyTypedDict", "ListAtsOfferResponseTypedDict", "ListAtsOfficeRequest", "ListAtsOfficeRequestTypedDict", "ListAtsOfficeResponse", "ListAtsOfficeResponseBody", "ListAtsOfficeResponseBodyTypedDict", "ListAtsOfficeResponseTypedDict", "ListAtsRejectReasonsRequest", "ListAtsRejectReasonsRequestTypedDict", "ListAtsRejectReasonsResponse", "ListAtsRejectReasonsResponseBody", "ListAtsRejectReasonsResponseBodyTypedDict", "ListAtsRejectReasonsResponseTypedDict", "ListAtsScorecardRequest", "ListAtsScorecardRequestTypedDict", "ListAtsScorecardResponse", "ListAtsScorecardResponseBody", "ListAtsScorecardResponseBodyTypedDict", "ListAtsScorecardResponseTypedDict", "ListAtsTagsRequest", "ListAtsTagsRequestTypedDict", "ListAtsTagsResponse", "ListAtsTagsResponseBody", "ListAtsTagsResponseBodyTypedDict", "ListAtsTagsResponseTypedDict", "ListAtsUsersRequest", "ListAtsUsersRequestTypedDict", "ListAtsUsersResponse", "ListAtsUsersResponseBody", "ListAtsUsersResponseBodyTypedDict", "ListAtsUsersResponseTypedDict", "ListCrmCompanyRequest", "ListCrmCompanyRequestTypedDict", "ListCrmCompanyResponse", "ListCrmCompanyResponseBody", "ListCrmCompanyResponseBodyTypedDict", "ListCrmCompanyResponseTypedDict", "ListCrmContactsRequest", "ListCrmContactsRequestTypedDict", "ListCrmContactsResponse", "ListCrmContactsResponseBody", "ListCrmContactsResponseBodyTypedDict", "ListCrmContactsResponseTypedDict", "ListCrmDealsRequest", "ListCrmDealsRequestTypedDict", "ListCrmDealsResponse", "ListCrmDealsResponseBody", "ListCrmDealsResponseBodyTypedDict", "ListCrmDealsResponseTypedDict", "ListCrmEngagementsRequest", "ListCrmEngagementsRequestTypedDict", "ListCrmEngagementsResponse", "ListCrmEngagementsResponseBody", "ListCrmEngagementsResponseBodyTypedDict", "ListCrmEngagementsResponseTypedDict", "ListCrmNoteRequest", "ListCrmNoteRequestTypedDict", "ListCrmNoteResponse", "ListCrmNoteResponseBody", "ListCrmNoteResponseBodyTypedDict", "ListCrmNoteResponseTypedDict", "ListCrmStagesRequest", "ListCrmStagesRequestTypedDict", "ListCrmStagesResponse", "ListCrmStagesResponseBody", "ListCrmStagesResponseBodyTypedDict", "ListCrmStagesResponseTypedDict", "ListCrmTaskRequest", "ListCrmTaskRequestTypedDict", "ListCrmTaskResponse", "ListCrmTaskResponseBody", "ListCrmTaskResponseBodyTypedDict", "ListCrmTaskResponseTypedDict", "ListCrmUsersRequest", "ListCrmUsersRequestTypedDict", "ListCrmUsersResponse", "ListCrmUsersResponseBody", "ListCrmUsersResponseBodyTypedDict", "ListCrmUsersResponseTypedDict", "ListEcommerceCustomersRequest", "ListEcommerceCustomersRequestTypedDict", "ListEcommerceCustomersResponse", "ListEcommerceCustomersResponseBody", "ListEcommerceCustomersResponseBodyTypedDict", "ListEcommerceCustomersResponseTypedDict", "ListEcommerceFulfillmentsRequest", "ListEcommerceFulfillmentsRequestTypedDict", "ListEcommerceFulfillmentsResponse", "ListEcommerceFulfillmentsResponseBody", "ListEcommerceFulfillmentsResponseBodyTypedDict", "ListEcommerceFulfillmentsResponseTypedDict", "ListEcommerceOrdersRequest", "ListEcommerceOrdersRequestTypedDict", "ListEcommerceOrdersResponse", "ListEcommerceOrdersResponseBody", "ListEcommerceOrdersResponseBodyTypedDict", "ListEcommerceOrdersResponseTypedDict", "ListEcommerceProductsRequest", "ListEcommerceProductsRequestTypedDict", "ListEcommerceProductsResponse", "ListEcommerceProductsResponseBody", "ListEcommerceProductsResponseBodyTypedDict", "ListEcommerceProductsResponseTypedDict", "ListFilestorageFileRequest", "ListFilestorageFileRequestTypedDict", "ListFilestorageFileResponse", "ListFilestorageFileResponseBody", "ListFilestorageFileResponseBodyTypedDict", "ListFilestorageFileResponseTypedDict", "ListFilestorageFolderRequest", "ListFilestorageFolderRequestTypedDict", "ListFilestorageFolderResponse", "ListFilestorageFolderResponseBody", "ListFilestorageFolderResponseBodyTypedDict", "ListFilestorageFolderResponseTypedDict", "ListFilestorageGroupRequest", "ListFilestorageGroupRequestTypedDict", "ListFilestorageGroupResponse", "ListFilestorageGroupResponseBody", "ListFilestorageGroupResponseBodyTypedDict", "ListFilestorageGroupResponseTypedDict", "ListFilestorageUsersRequest", "ListFilestorageUsersRequestTypedDict", "ListFilestorageUsersResponse", "ListFilestorageUsersResponseBody", "ListFilestorageUsersResponseBodyTypedDict", "ListFilestorageUsersResponseTypedDict", "ListHrisBankInfoRequest", "ListHrisBankInfoRequestTypedDict", "ListHrisBankInfoResponse", "ListHrisBankInfoResponseBody", "ListHrisBankInfoResponseBodyTypedDict", "ListHrisBankInfoResponseTypedDict", "ListHrisBenefitsRequest", "ListHrisBenefitsRequestTypedDict", "ListHrisBenefitsResponse", "ListHrisBenefitsResponseBody", "ListHrisBenefitsResponseBodyTypedDict", "ListHrisBenefitsResponseTypedDict", "ListHrisCompaniesRequest", "ListHrisCompaniesRequestTypedDict", "ListHrisCompaniesResponse", "ListHrisCompaniesResponseBody", "ListHrisCompaniesResponseBodyTypedDict", "ListHrisCompaniesResponseTypedDict", "ListHrisDependentsRequest", "ListHrisDependentsRequestTypedDict", "ListHrisDependentsResponse", "ListHrisDependentsResponseBody", "ListHrisDependentsResponseBodyTypedDict", "ListHrisDependentsResponseTypedDict", "ListHrisEmployeePayrollRunRequest", "ListHrisEmployeePayrollRunRequestTypedDict", "ListHrisEmployeePayrollRunResponse", "ListHrisEmployeePayrollRunResponseBody", "ListHrisEmployeePayrollRunResponseBodyTypedDict", "ListHrisEmployeePayrollRunResponseTypedDict", "ListHrisEmployeesRequest", "ListHrisEmployeesRequestTypedDict", "ListHrisEmployeesResponse", "ListHrisEmployeesResponseBody", "ListHrisEmployeesResponseBodyTypedDict", "ListHrisEmployeesResponseTypedDict", "ListHrisEmployerBenefitsRequest", "ListHrisEmployerBenefitsRequestTypedDict", "ListHrisEmployerBenefitsResponse", "ListHrisEmployerBenefitsResponseBody", "ListHrisEmployerBenefitsResponseBodyTypedDict", "ListHrisEmployerBenefitsResponseTypedDict", "ListHrisEmploymentsRequest", "ListHrisEmploymentsRequestTypedDict", "ListHrisEmploymentsResponse", "ListHrisEmploymentsResponseBody", "ListHrisEmploymentsResponseBodyTypedDict", "ListHrisEmploymentsResponseTypedDict", "ListHrisGroupsRequest", "ListHrisGroupsRequestTypedDict", "ListHrisGroupsResponse", "ListHrisGroupsResponseBody", "ListHrisGroupsResponseBodyTypedDict", "ListHrisGroupsResponseTypedDict", "ListHrisLocationsRequest", "ListHrisLocationsRequestTypedDict", "ListHrisLocationsResponse", "ListHrisLocationsResponseBody", "ListHrisLocationsResponseBodyTypedDict", "ListHrisLocationsResponseTypedDict", "ListHrisPaygroupsRequest", "ListHrisPaygroupsRequestTypedDict", "ListHrisPaygroupsResponse", "ListHrisPaygroupsResponseBody", "ListHrisPaygroupsResponseBodyTypedDict", "ListHrisPaygroupsResponseTypedDict", "ListHrisPayrollRunsRequest", "ListHrisPayrollRunsRequestTypedDict", "ListHrisPayrollRunsResponse", "ListHrisPayrollRunsResponseBody", "ListHrisPayrollRunsResponseBodyTypedDict", "ListHrisPayrollRunsResponseTypedDict", "ListHrisTimeoffbalancesRequest", "ListHrisTimeoffbalancesRequestTypedDict", "ListHrisTimeoffbalancesResponse", "ListHrisTimeoffbalancesResponseBody", "ListHrisTimeoffbalancesResponseBodyTypedDict", "ListHrisTimeoffbalancesResponseTypedDict", "ListHrisTimeoffsRequest", "ListHrisTimeoffsRequestTypedDict", "ListHrisTimeoffsResponse", "ListHrisTimeoffsResponseBody", "ListHrisTimeoffsResponseBodyTypedDict", "ListHrisTimeoffsResponseTypedDict", "ListHrisTimesheetentriesRequest", "ListHrisTimesheetentriesRequestTypedDict", "ListHrisTimesheetentriesResponse", "ListHrisTimesheetentriesResponseBody", "ListHrisTimesheetentriesResponseBodyTypedDict", "ListHrisTimesheetentriesResponseTypedDict", "ListMarketingAutomationContactsRequest", "ListMarketingAutomationContactsRequestTypedDict", "ListMarketingAutomationContactsResponse", "ListMarketingAutomationContactsResponseBody", "ListMarketingAutomationContactsResponseBodyTypedDict", "ListMarketingAutomationContactsResponseTypedDict", "ListMarketingAutomationEventsRequest", "ListMarketingAutomationEventsRequestTypedDict", "ListMarketingAutomationEventsResponse", "ListMarketingAutomationEventsResponseBody", "ListMarketingAutomationEventsResponseBodyTypedDict", "ListMarketingAutomationEventsResponseTypedDict", "ListMarketingAutomationUsersRequest", "ListMarketingAutomationUsersRequestTypedDict", "ListMarketingAutomationUsersResponse", "ListMarketingAutomationUsersResponseBody", "ListMarketingAutomationUsersResponseBodyTypedDict", "ListMarketingAutomationUsersResponseTypedDict", "ListMarketingautomationActionRequest", "ListMarketingautomationActionRequestTypedDict", "ListMarketingautomationActionResponse", "ListMarketingautomationActionResponseBody", "ListMarketingautomationActionResponseBodyTypedDict", "ListMarketingautomationActionResponseTypedDict", "ListMarketingautomationAutomationsRequest", "ListMarketingautomationAutomationsRequestTypedDict", "ListMarketingautomationAutomationsResponse", "ListMarketingautomationAutomationsResponseBody", "ListMarketingautomationAutomationsResponseBodyTypedDict", "ListMarketingautomationAutomationsResponseTypedDict", "ListMarketingautomationCampaignsRequest", "ListMarketingautomationCampaignsRequestTypedDict", "ListMarketingautomationCampaignsResponse", "ListMarketingautomationCampaignsResponseBody", "ListMarketingautomationCampaignsResponseBodyTypedDict", "ListMarketingautomationCampaignsResponseTypedDict", "ListMarketingautomationEmailsRequest", "ListMarketingautomationEmailsRequestTypedDict", "ListMarketingautomationEmailsResponse", "ListMarketingautomationEmailsResponseBody", "ListMarketingautomationEmailsResponseBodyTypedDict", "ListMarketingautomationEmailsResponseTypedDict", "ListMarketingautomationListsRequest", "ListMarketingautomationListsRequestTypedDict", "ListMarketingautomationListsResponse", "ListMarketingautomationListsResponseBody", "ListMarketingautomationListsResponseBodyTypedDict", "ListMarketingautomationListsResponseTypedDict", "ListMarketingautomationMessagesRequest", "ListMarketingautomationMessagesRequestTypedDict", "ListMarketingautomationMessagesResponse", "ListMarketingautomationMessagesResponseBody", "ListMarketingautomationMessagesResponseBodyTypedDict", "ListMarketingautomationMessagesResponseTypedDict", "ListMarketingautomationTemplatesRequest", "ListMarketingautomationTemplatesRequestTypedDict", "ListMarketingautomationTemplatesResponse", "ListMarketingautomationTemplatesResponseBody", "ListMarketingautomationTemplatesResponseBodyTypedDict", "ListMarketingautomationTemplatesResponseTypedDict", "ListTicketingAccountRequest", "ListTicketingAccountRequestTypedDict", "ListTicketingAccountResponse", "ListTicketingAccountResponseBody", "ListTicketingAccountResponseBodyTypedDict", "ListTicketingAccountResponseTypedDict", "ListTicketingAttachmentsRequest", "ListTicketingAttachmentsRequestTypedDict", "ListTicketingAttachmentsResponse", "ListTicketingAttachmentsResponseBody", "ListTicketingAttachmentsResponseBodyTypedDict", "ListTicketingAttachmentsResponseTypedDict", "ListTicketingCollectionsRequest", "ListTicketingCollectionsRequestTypedDict", "ListTicketingCollectionsResponse", "ListTicketingCollectionsResponseBody", "ListTicketingCollectionsResponseBodyTypedDict", "ListTicketingCollectionsResponseTypedDict", "ListTicketingCommentsRequest", "ListTicketingCommentsRequestTypedDict", "ListTicketingCommentsResponse", "ListTicketingCommentsResponseBody", "ListTicketingCommentsResponseBodyTypedDict", "ListTicketingCommentsResponseTypedDict", "ListTicketingContactsRequest", "ListTicketingContactsRequestTypedDict", "ListTicketingContactsResponse", "ListTicketingContactsResponseBody", "ListTicketingContactsResponseBodyTypedDict", "ListTicketingContactsResponseTypedDict", "ListTicketingTagsRequest", "ListTicketingTagsRequestTypedDict", "ListTicketingTagsResponse", "ListTicketingTagsResponseBody", "ListTicketingTagsResponseBodyTypedDict", "ListTicketingTagsResponseTypedDict", "ListTicketingTeamsRequest", "ListTicketingTeamsRequestTypedDict", "ListTicketingTeamsResponse", "ListTicketingTeamsResponseBody", "ListTicketingTeamsResponseBodyTypedDict", "ListTicketingTeamsResponseTypedDict", "ListTicketingTicketRequest", "ListTicketingTicketRequestTypedDict", "ListTicketingTicketResponse", "ListTicketingTicketResponseBody", "ListTicketingTicketResponseBodyTypedDict", "ListTicketingTicketResponseTypedDict", "ListTicketingUsersRequest", "ListTicketingUsersRequestTypedDict", "ListTicketingUsersResponse", "ListTicketingUsersResponseBody", "ListTicketingUsersResponseBodyTypedDict", "ListTicketingUsersResponseTypedDict", "LoginDto", "LoginDtoTypedDict", "MapFieldToProviderDto", "MapFieldToProviderDtoTypedDict", "Method", "ModifiedAt", "ModifiedAtTypedDict", "ObjectTypeOwner", "OwnerType", "PassThroughRequestDto", "PassThroughRequestDtoMethod", "PassThroughRequestDtoTypedDict", "PathParamVertical", "Phone", "PhoneTypedDict", "ProjectResponse", "ProjectResponseTypedDict", "QueryBody", "QueryBodyTypedDict", "QueryRequest", "QueryRequestTypedDict", "QueryResponseBody", "QueryResponseBodyTypedDict", "RemoteData", "RemoteDataTypedDict", "RemoteIDRequest", "RemoteIDRequestTypedDict", "RequestFormat", "RequestFormatTypedDict", "RequestPassthroughResponseBody", "RequestPassthroughResponseBodyTypedDict", "RequestRequest", "RequestRequestTypedDict", "RequestResponse", "RequestResponseBody", "RequestResponseBodyTypedDict", "RequestResponseTypedDict", "ResyncStatusDto", "ResyncStatusDtoTypedDict", "RetrieveAccountingAccountRequest", "RetrieveAccountingAccountRequestTypedDict", "RetrieveAccountingAddressRequest", "RetrieveAccountingAddressRequestTypedDict", "RetrieveAccountingAttachmentRequest", "RetrieveAccountingAttachmentRequestTypedDict", "RetrieveAccountingBalanceSheetRequest", "RetrieveAccountingBalanceSheetRequestTypedDict", "RetrieveAccountingCashflowStatementRequest", "RetrieveAccountingCashflowStatementRequestTypedDict", "RetrieveAccountingCompanyInfoRequest", "RetrieveAccountingCompanyInfoRequestTypedDict", "RetrieveAccountingContactRequest", "RetrieveAccountingContactRequestTypedDict", "RetrieveAccountingCreditNoteRequest", "RetrieveAccountingCreditNoteRequestTypedDict", "RetrieveAccountingExpenseRequest", "RetrieveAccountingExpenseRequestTypedDict", "RetrieveAccountingIncomeStatementRequest", "RetrieveAccountingIncomeStatementRequestTypedDict", "RetrieveAccountingInvoiceRequest", "RetrieveAccountingInvoiceRequestTypedDict", "RetrieveAccountingItemRequest", "RetrieveAccountingItemRequestTypedDict", "RetrieveAccountingJournalEntryRequest", "RetrieveAccountingJournalEntryRequestTypedDict", "RetrieveAccountingPaymentRequest", "RetrieveAccountingPaymentRequestTypedDict", "RetrieveAccountingPhonenumberRequest", "RetrieveAccountingPhonenumberRequestTypedDict", "RetrieveAccountingPurchaseOrderRequest", "RetrieveAccountingPurchaseOrderRequestTypedDict", "RetrieveAccountingTaxRateRequest", "RetrieveAccountingTaxRateRequestTypedDict", "RetrieveAccountingTrackingCategoryRequest", "RetrieveAccountingTrackingCategoryRequestTypedDict", "RetrieveAccountingTransactionRequest", "RetrieveAccountingTransactionRequestTypedDict", "RetrieveAccountingVendorCreditRequest", "RetrieveAccountingVendorCreditRequestTypedDict", "RetrieveAtsActivityRequest", "RetrieveAtsActivityRequestTypedDict", "RetrieveAtsApplicationRequest", "RetrieveAtsApplicationRequestTypedDict", "RetrieveAtsAttachmentRequest", "RetrieveAtsAttachmentRequestTypedDict", "RetrieveAtsCandidateRequest", "RetrieveAtsCandidateRequestTypedDict", "RetrieveAtsDepartmentRequest", "RetrieveAtsDepartmentRequestTypedDict", "RetrieveAtsEeocsRequest", "RetrieveAtsEeocsRequestTypedDict", "RetrieveAtsInterviewRequest", "RetrieveAtsInterviewRequestTypedDict", "RetrieveAtsJobInterviewStageRequest", "RetrieveAtsJobInterviewStageRequestTypedDict", "RetrieveAtsJobRequest", "RetrieveAtsJobRequestTypedDict", "RetrieveAtsOfferRequest", "RetrieveAtsOfferRequestTypedDict", "RetrieveAtsOfficeRequest", "RetrieveAtsOfficeRequestTypedDict", "RetrieveAtsRejectReasonRequest", "RetrieveAtsRejectReasonRequestTypedDict", "RetrieveAtsScorecardRequest", "RetrieveAtsScorecardRequestTypedDict", "RetrieveAtsTagRequest", "RetrieveAtsTagRequestTypedDict", "RetrieveAtsUserRequest", "RetrieveAtsUserRequestTypedDict", "RetrieveCollectionRequest", "RetrieveCollectionRequestTypedDict", "RetrieveCrmCompanyRequest", "RetrieveCrmCompanyRequestTypedDict", "RetrieveCrmContactRequest", "RetrieveCrmContactRequestTypedDict", "RetrieveCrmDealRequest", "RetrieveCrmDealRequestTypedDict", "RetrieveCrmEngagementRequest", "RetrieveCrmEngagementRequestTypedDict", "RetrieveCrmNoteRequest", "RetrieveCrmNoteRequestTypedDict", "RetrieveCrmStageRequest", "RetrieveCrmStageRequestTypedDict", "RetrieveCrmTaskRequest", "RetrieveCrmTaskRequestTypedDict", "RetrieveCrmUserRequest", "RetrieveCrmUserRequestTypedDict", "RetrieveEcommerceCustomerRequest", "RetrieveEcommerceCustomerRequestTypedDict", "RetrieveEcommerceFulfillmentRequest", "RetrieveEcommerceFulfillmentRequestTypedDict", "RetrieveEcommerceOrderRequest", "RetrieveEcommerceOrderRequestTypedDict", "RetrieveEcommerceProductRequest", "RetrieveEcommerceProductRequestTypedDict", "RetrieveFilestorageFileRequest", "RetrieveFilestorageFileRequestTypedDict", "RetrieveFilestorageFolderRequest", "RetrieveFilestorageFolderRequestTypedDict", "RetrieveFilestorageGroupRequest", "RetrieveFilestorageGroupRequestTypedDict", "RetrieveFilestorageUserRequest", "RetrieveFilestorageUserRequestTypedDict", "RetrieveHrisBankInfoRequest", "RetrieveHrisBankInfoRequestTypedDict", "RetrieveHrisBenefitRequest", "RetrieveHrisBenefitRequestTypedDict", "RetrieveHrisCompanyRequest", "RetrieveHrisCompanyRequestTypedDict", "RetrieveHrisDependentRequest", "RetrieveHrisDependentRequestTypedDict", "RetrieveHrisEmployeePayrollRunRequest", "RetrieveHrisEmployeePayrollRunRequestTypedDict", "RetrieveHrisEmployeeRequest", "RetrieveHrisEmployeeRequestTypedDict", "RetrieveHrisEmployerBenefitRequest", "RetrieveHrisEmployerBenefitRequestTypedDict", "RetrieveHrisEmploymentRequest", "RetrieveHrisEmploymentRequestTypedDict", "RetrieveHrisGroupRequest", "RetrieveHrisGroupRequestTypedDict", "RetrieveHrisLocationRequest", "RetrieveHrisLocationRequestTypedDict", "RetrieveHrisPaygroupRequest", "RetrieveHrisPaygroupRequestTypedDict", "RetrieveHrisPayrollRunRequest", "RetrieveHrisPayrollRunRequestTypedDict", "RetrieveHrisTimeoffRequest", "RetrieveHrisTimeoffRequestTypedDict", "RetrieveHrisTimeoffbalanceRequest", "RetrieveHrisTimeoffbalanceRequestTypedDict", "RetrieveHrisTimesheetentryRequest", "RetrieveHrisTimesheetentryRequestTypedDict", "RetrieveLinkedUserRequest", "RetrieveLinkedUserRequestTypedDict", "RetrieveMarketingAutomationContactRequest", "RetrieveMarketingAutomationContactRequestTypedDict", "RetrieveMarketingAutomationUserRequest", "RetrieveMarketingAutomationUserRequestTypedDict", "RetrieveMarketingautomationActionRequest", "RetrieveMarketingautomationActionRequestTypedDict", "RetrieveMarketingautomationAutomationRequest", "RetrieveMarketingautomationAutomationRequestTypedDict", "RetrieveMarketingautomationCampaignRequest", "RetrieveMarketingautomationCampaignRequestTypedDict", "RetrieveMarketingautomationEmailRequest", "RetrieveMarketingautomationEmailRequestTypedDict", "RetrieveMarketingautomationEventRequest", "RetrieveMarketingautomationEventRequestTypedDict", "RetrieveMarketingautomationListRequest", "RetrieveMarketingautomationListRequestTypedDict", "RetrieveMarketingautomationMessageRequest", "RetrieveMarketingautomationMessageRequestTypedDict", "RetrieveMarketingautomationTemplateRequest", "RetrieveMarketingautomationTemplateRequestTypedDict", "RetrieveTicketingAccountRequest", "RetrieveTicketingAccountRequestTypedDict", "RetrieveTicketingAttachmentRequest", "RetrieveTicketingAttachmentRequestTypedDict", "RetrieveTicketingCommentRequest", "RetrieveTicketingCommentRequestTypedDict", "RetrieveTicketingCommentResponseBody", "RetrieveTicketingCommentResponseBodyTypedDict", "RetrieveTicketingContactRequest", "RetrieveTicketingContactRequestTypedDict", "RetrieveTicketingContactResponseBody", "RetrieveTicketingContactResponseBodyTypedDict", "RetrieveTicketingTagRequest", "RetrieveTicketingTagRequestTypedDict", "RetrieveTicketingTeamRequest", "RetrieveTicketingTeamRequestTypedDict", "RetrieveTicketingTicketRequest", "RetrieveTicketingTicketRequestTypedDict", "RetrieveTicketingUserRequest", "RetrieveTicketingUserRequestTypedDict", "SDKError", "Security", "SecurityTypedDict", "SignatureVerificationDto", "SignatureVerificationDtoTypedDict", "Status", "StatusRequest", "StatusRequestTypedDict", "TagsModel", "TagsModelTypedDict", "TaxItem", "TaxItemTypedDict", "TokenType", "Type", "URL", "URLTypedDict", "UnifiedAccountingAccountInput", "UnifiedAccountingAccountInputFieldMappings", "UnifiedAccountingAccountInputFieldMappingsTypedDict", "UnifiedAccountingAccountInputTypedDict", "UnifiedAccountingAccountOutput", "UnifiedAccountingAccountOutputFieldMappings", "UnifiedAccountingAccountOutputFieldMappingsTypedDict", "UnifiedAccountingAccountOutputRemoteData", "UnifiedAccountingAccountOutputRemoteDataTypedDict", "UnifiedAccountingAccountOutputTypedDict", "UnifiedAccountingAddressOutput", "UnifiedAccountingAddressOutputFieldMappings", "UnifiedAccountingAddressOutputFieldMappingsTypedDict", "UnifiedAccountingAddressOutputRemoteData", "UnifiedAccountingAddressOutputRemoteDataTypedDict", "UnifiedAccountingAddressOutputTypedDict", "UnifiedAccountingAttachmentInput", "UnifiedAccountingAttachmentInputFieldMappings", "UnifiedAccountingAttachmentInputFieldMappingsTypedDict", "UnifiedAccountingAttachmentInputTypedDict", "UnifiedAccountingAttachmentOutput", "UnifiedAccountingAttachmentOutputFieldMappings", "UnifiedAccountingAttachmentOutputFieldMappingsTypedDict", "UnifiedAccountingAttachmentOutputRemoteData", "UnifiedAccountingAttachmentOutputRemoteDataTypedDict", "UnifiedAccountingAttachmentOutputTypedDict", "UnifiedAccountingBalancesheetOutput", "UnifiedAccountingBalancesheetOutputFieldMappings", "UnifiedAccountingBalancesheetOutputFieldMappingsTypedDict", "UnifiedAccountingBalancesheetOutputRemoteData", "UnifiedAccountingBalancesheetOutputRemoteDataTypedDict", "UnifiedAccountingBalancesheetOutputTypedDict", "UnifiedAccountingCashflowstatementOutput", "UnifiedAccountingCashflowstatementOutputFieldMappings", "UnifiedAccountingCashflowstatementOutputFieldMappingsTypedDict", "UnifiedAccountingCashflowstatementOutputRemoteData", "UnifiedAccountingCashflowstatementOutputRemoteDataTypedDict", "UnifiedAccountingCashflowstatementOutputTypedDict", "UnifiedAccountingCompanyinfoOutput", "UnifiedAccountingCompanyinfoOutputFieldMappings", "UnifiedAccountingCompanyinfoOutputFieldMappingsTypedDict", "UnifiedAccountingCompanyinfoOutputRemoteData", "UnifiedAccountingCompanyinfoOutputRemoteDataTypedDict", "UnifiedAccountingCompanyinfoOutputTypedDict", "UnifiedAccountingContactInput", "UnifiedAccountingContactInputFieldMappings", "UnifiedAccountingContactInputFieldMappingsTypedDict", "UnifiedAccountingContactInputTypedDict", "UnifiedAccountingContactOutput", "UnifiedAccountingContactOutputFieldMappings", "UnifiedAccountingContactOutputFieldMappingsTypedDict", "UnifiedAccountingContactOutputRemoteData", "UnifiedAccountingContactOutputRemoteDataTypedDict", "UnifiedAccountingContactOutputTypedDict", "UnifiedAccountingCreditnoteOutput", "UnifiedAccountingCreditnoteOutputFieldMappings", "UnifiedAccountingCreditnoteOutputFieldMappingsTypedDict", "UnifiedAccountingCreditnoteOutputRemoteData", "UnifiedAccountingCreditnoteOutputRemoteDataTypedDict", "UnifiedAccountingCreditnoteOutputTypedDict", "UnifiedAccountingExpenseInput", "UnifiedAccountingExpenseInputFieldMappings", "UnifiedAccountingExpenseInputFieldMappingsTypedDict", "UnifiedAccountingExpenseInputTypedDict", "UnifiedAccountingExpenseOutput", "UnifiedAccountingExpenseOutputFieldMappings", "UnifiedAccountingExpenseOutputFieldMappingsTypedDict", "UnifiedAccountingExpenseOutputRemoteData", "UnifiedAccountingExpenseOutputRemoteDataTypedDict", "UnifiedAccountingExpenseOutputTypedDict", "UnifiedAccountingIncomestatementOutput", "UnifiedAccountingIncomestatementOutputFieldMappings", "UnifiedAccountingIncomestatementOutputFieldMappingsTypedDict", "UnifiedAccountingIncomestatementOutputRemoteData", "UnifiedAccountingIncomestatementOutputRemoteDataTypedDict", "UnifiedAccountingIncomestatementOutputTypedDict", "UnifiedAccountingInvoiceInput", "UnifiedAccountingInvoiceInputFieldMappings", "UnifiedAccountingInvoiceInputFieldMappingsTypedDict", "UnifiedAccountingInvoiceInputTypedDict", "UnifiedAccountingInvoiceOutput", "UnifiedAccountingInvoiceOutputFieldMappings", "UnifiedAccountingInvoiceOutputFieldMappingsTypedDict", "UnifiedAccountingInvoiceOutputRemoteData", "UnifiedAccountingInvoiceOutputRemoteDataTypedDict", "UnifiedAccountingInvoiceOutputTypedDict", "UnifiedAccountingItemOutput", "UnifiedAccountingItemOutputFieldMappings", "UnifiedAccountingItemOutputFieldMappingsTypedDict", "UnifiedAccountingItemOutputRemoteData", "UnifiedAccountingItemOutputRemoteDataTypedDict", "UnifiedAccountingItemOutputTypedDict", "UnifiedAccountingJournalentryInput", "UnifiedAccountingJournalentryInputFieldMappings", "UnifiedAccountingJournalentryInputFieldMappingsTypedDict", "UnifiedAccountingJournalentryInputTypedDict", "UnifiedAccountingJournalentryOutput", "UnifiedAccountingJournalentryOutputFieldMappings", "UnifiedAccountingJournalentryOutputFieldMappingsTypedDict", "UnifiedAccountingJournalentryOutputRemoteData", "UnifiedAccountingJournalentryOutputRemoteDataTypedDict", "UnifiedAccountingJournalentryOutputTypedDict", "UnifiedAccountingPaymentInput", "UnifiedAccountingPaymentInputFieldMappings", "UnifiedAccountingPaymentInputFieldMappingsTypedDict", "UnifiedAccountingPaymentInputTypedDict", "UnifiedAccountingPaymentOutput", "UnifiedAccountingPaymentOutputFieldMappings", "UnifiedAccountingPaymentOutputFieldMappingsTypedDict", "UnifiedAccountingPaymentOutputRemoteData", "UnifiedAccountingPaymentOutputRemoteDataTypedDict", "UnifiedAccountingPaymentOutputTypedDict", "UnifiedAccountingPhonenumberOutput", "UnifiedAccountingPhonenumberOutputFieldMappings", "UnifiedAccountingPhonenumberOutputFieldMappingsTypedDict", "UnifiedAccountingPhonenumberOutputRemoteData", "UnifiedAccountingPhonenumberOutputRemoteDataTypedDict", "UnifiedAccountingPhonenumberOutputTypedDict", "UnifiedAccountingPurchaseorderInput", "UnifiedAccountingPurchaseorderInputFieldMappings", "UnifiedAccountingPurchaseorderInputFieldMappingsTypedDict", "UnifiedAccountingPurchaseorderInputTypedDict", "UnifiedAccountingPurchaseorderOutput", "UnifiedAccountingPurchaseorderOutputFieldMappings", "UnifiedAccountingPurchaseorderOutputFieldMappingsTypedDict", "UnifiedAccountingPurchaseorderOutputRemoteData", "UnifiedAccountingPurchaseorderOutputRemoteDataTypedDict", "UnifiedAccountingPurchaseorderOutputTypedDict", "UnifiedAccountingTaxrateOutput", "UnifiedAccountingTaxrateOutputFieldMappings", "UnifiedAccountingTaxrateOutputFieldMappingsTypedDict", "UnifiedAccountingTaxrateOutputRemoteData", "UnifiedAccountingTaxrateOutputRemoteDataTypedDict", "UnifiedAccountingTaxrateOutputTypedDict", "UnifiedAccountingTrackingcategoryOutput", "UnifiedAccountingTrackingcategoryOutputFieldMappings", "UnifiedAccountingTrackingcategoryOutputFieldMappingsTypedDict", "UnifiedAccountingTrackingcategoryOutputRemoteData", "UnifiedAccountingTrackingcategoryOutputRemoteDataTypedDict", "UnifiedAccountingTrackingcategoryOutputTypedDict", "UnifiedAccountingTransactionOutput", "UnifiedAccountingTransactionOutputFieldMappings", "UnifiedAccountingTransactionOutputFieldMappingsTypedDict", "UnifiedAccountingTransactionOutputRemoteData", "UnifiedAccountingTransactionOutputRemoteDataTypedDict", "UnifiedAccountingTransactionOutputTypedDict", "UnifiedAccountingVendorcreditOutput", "UnifiedAccountingVendorcreditOutputFieldMappings", "UnifiedAccountingVendorcreditOutputFieldMappingsTypedDict", "UnifiedAccountingVendorcreditOutputRemoteData", "UnifiedAccountingVendorcreditOutputRemoteDataTypedDict", "UnifiedAccountingVendorcreditOutputTypedDict", "UnifiedAtsActivityInput", "UnifiedAtsActivityInputTypedDict", "UnifiedAtsActivityOutput", "UnifiedAtsActivityOutputTypedDict", "UnifiedAtsApplicationInput", "UnifiedAtsApplicationInputTypedDict", "UnifiedAtsApplicationOutput", "UnifiedAtsApplicationOutputTypedDict", "UnifiedAtsAttachmentInput", "UnifiedAtsAttachmentInputTypedDict", "UnifiedAtsAttachmentOutput", "UnifiedAtsAttachmentOutputTypedDict", "UnifiedAtsCandidateInput", "UnifiedAtsCandidateInputApplications", "UnifiedAtsCandidateInputApplicationsTypedDict", "UnifiedAtsCandidateInputAttachments", "UnifiedAtsCandidateInputAttachmentsTypedDict", "UnifiedAtsCandidateInputTags", "UnifiedAtsCandidateInputTagsTypedDict", "UnifiedAtsCandidateInputTypedDict", "UnifiedAtsCandidateOutput", "UnifiedAtsCandidateOutputAttachments", "UnifiedAtsCandidateOutputAttachmentsTypedDict", "UnifiedAtsCandidateOutputTags", "UnifiedAtsCandidateOutputTagsTypedDict", "UnifiedAtsCandidateOutputTypedDict", "UnifiedAtsDepartmentOutput", "UnifiedAtsDepartmentOutputTypedDict", "UnifiedAtsEeocsOutput", "UnifiedAtsEeocsOutputTypedDict", "UnifiedAtsInterviewInput", "UnifiedAtsInterviewInputTypedDict", "UnifiedAtsInterviewOutput", "UnifiedAtsInterviewOutputTypedDict", "UnifiedAtsJobOutput", "UnifiedAtsJobOutputTypedDict", "UnifiedAtsJobinterviewstageOutput", "UnifiedAtsJobinterviewstageOutputTypedDict", "UnifiedAtsOfferOutput", "UnifiedAtsOfferOutputCreatedAt", "UnifiedAtsOfferOutputCreatedAtTypedDict", "UnifiedAtsOfferOutputModifiedAt", "UnifiedAtsOfferOutputModifiedAtTypedDict", "UnifiedAtsOfferOutputTypedDict", "UnifiedAtsOfficeOutput", "UnifiedAtsOfficeOutputTypedDict", "UnifiedAtsRejectreasonOutput", "UnifiedAtsRejectreasonOutputTypedDict", "UnifiedAtsScorecardOutput", "UnifiedAtsScorecardOutputTypedDict", "UnifiedAtsTagOutput", "UnifiedAtsTagOutputTypedDict", "UnifiedAtsUserOutput", "UnifiedAtsUserOutputTypedDict", "UnifiedCrmCompanyInput", "UnifiedCrmCompanyInputTypedDict", "UnifiedCrmCompanyOutput", "UnifiedCrmCompanyOutputTypedDict", "UnifiedCrmContactInput", "UnifiedCrmContactInputTypedDict", "UnifiedCrmContactOutput", "UnifiedCrmContactOutputTypedDict", "UnifiedCrmDealInput", "UnifiedCrmDealInputTypedDict", "UnifiedCrmDealOutput", "UnifiedCrmDealOutputTypedDict", "UnifiedCrmEngagementInput", "UnifiedCrmEngagementInputTypedDict", "UnifiedCrmEngagementOutput", "UnifiedCrmEngagementOutputTypedDict", "UnifiedCrmNoteInput", "UnifiedCrmNoteInputTypedDict", "UnifiedCrmNoteOutput", "UnifiedCrmNoteOutputTypedDict", "UnifiedCrmStageOutput", "UnifiedCrmStageOutputCreatedAt", "UnifiedCrmStageOutputCreatedAtTypedDict", "UnifiedCrmStageOutputModifiedAt", "UnifiedCrmStageOutputModifiedAtTypedDict", "UnifiedCrmStageOutputTypedDict", "UnifiedCrmTaskInput", "UnifiedCrmTaskInputTypedDict", "UnifiedCrmTaskOutput", "UnifiedCrmTaskOutputTypedDict", "UnifiedCrmUserOutput", "UnifiedCrmUserOutputTypedDict", "UnifiedEcommerceCustomerOutput", "UnifiedEcommerceCustomerOutputFieldMappings", "UnifiedEcommerceCustomerOutputFieldMappingsTypedDict", "UnifiedEcommerceCustomerOutputRemoteData", "UnifiedEcommerceCustomerOutputRemoteDataTypedDict", "UnifiedEcommerceCustomerOutputTypedDict", "UnifiedEcommerceFulfillmentOutput", "UnifiedEcommerceFulfillmentOutputFieldMappings", "UnifiedEcommerceFulfillmentOutputFieldMappingsTypedDict", "UnifiedEcommerceFulfillmentOutputRemoteData", "UnifiedEcommerceFulfillmentOutputRemoteDataTypedDict", "UnifiedEcommerceFulfillmentOutputTypedDict", "UnifiedEcommerceOrderInput", "UnifiedEcommerceOrderInputFieldMappings", "UnifiedEcommerceOrderInputFieldMappingsTypedDict", "UnifiedEcommerceOrderInputTypedDict", "UnifiedEcommerceOrderOutput", "UnifiedEcommerceOrderOutputFieldMappings", "UnifiedEcommerceOrderOutputFieldMappingsTypedDict", "UnifiedEcommerceOrderOutputRemoteData", "UnifiedEcommerceOrderOutputRemoteDataTypedDict", "UnifiedEcommerceOrderOutputTypedDict", "UnifiedEcommerceProductInput", "UnifiedEcommerceProductInputFieldMappings", "UnifiedEcommerceProductInputFieldMappingsTypedDict", "UnifiedEcommerceProductInputTypedDict", "UnifiedEcommerceProductOutput", "UnifiedEcommerceProductOutputFieldMappings", "UnifiedEcommerceProductOutputFieldMappingsTypedDict", "UnifiedEcommerceProductOutputRemoteData", "UnifiedEcommerceProductOutputRemoteDataTypedDict", "UnifiedEcommerceProductOutputTypedDict", "UnifiedFilestorageFileInput", "UnifiedFilestorageFileInputTypedDict", "UnifiedFilestorageFileOutput", "UnifiedFilestorageFileOutputTypedDict", "UnifiedFilestorageFolderInput", "UnifiedFilestorageFolderInputTypedDict", "UnifiedFilestorageFolderOutput", "UnifiedFilestorageFolderOutputTypedDict", "UnifiedFilestorageGroupOutput", "UnifiedFilestorageGroupOutputTypedDict", "UnifiedFilestorageUserOutput", "UnifiedFilestorageUserOutputTypedDict", "UnifiedHrisBankinfoOutput", "UnifiedHrisBankinfoOutputTypedDict", "UnifiedHrisBenefitOutput", "UnifiedHrisBenefitOutputFieldMappings", "UnifiedHrisBenefitOutputFieldMappingsTypedDict", "UnifiedHrisBenefitOutputRemoteData", "UnifiedHrisBenefitOutputRemoteDataTypedDict", "UnifiedHrisBenefitOutputTypedDict", "UnifiedHrisCompanyOutput", "UnifiedHrisCompanyOutputFieldMappings", "UnifiedHrisCompanyOutputFieldMappingsTypedDict", "UnifiedHrisCompanyOutputRemoteData", "UnifiedHrisCompanyOutputRemoteDataTypedDict", "UnifiedHrisCompanyOutputTypedDict", "UnifiedHrisDependentOutput", "UnifiedHrisDependentOutputFieldMappings", "UnifiedHrisDependentOutputFieldMappingsTypedDict", "UnifiedHrisDependentOutputRemoteData", "UnifiedHrisDependentOutputRemoteDataTypedDict", "UnifiedHrisDependentOutputTypedDict", "UnifiedHrisEmployeeInput", "UnifiedHrisEmployeeInputFieldMappings", "UnifiedHrisEmployeeInputFieldMappingsTypedDict", "UnifiedHrisEmployeeInputTypedDict", "UnifiedHrisEmployeeOutput", "UnifiedHrisEmployeeOutputFieldMappings", "UnifiedHrisEmployeeOutputFieldMappingsTypedDict", "UnifiedHrisEmployeeOutputRemoteData", "UnifiedHrisEmployeeOutputRemoteDataTypedDict", "UnifiedHrisEmployeeOutputTypedDict", "UnifiedHrisEmployeepayrollrunOutput", "UnifiedHrisEmployeepayrollrunOutputFieldMappings", "UnifiedHrisEmployeepayrollrunOutputFieldMappingsTypedDict", "UnifiedHrisEmployeepayrollrunOutputRemoteData", "UnifiedHrisEmployeepayrollrunOutputRemoteDataTypedDict", "UnifiedHrisEmployeepayrollrunOutputTypedDict", "UnifiedHrisEmployerbenefitOutput", "UnifiedHrisEmployerbenefitOutputFieldMappings", "UnifiedHrisEmployerbenefitOutputFieldMappingsTypedDict", "UnifiedHrisEmployerbenefitOutputRemoteData", "UnifiedHrisEmployerbenefitOutputRemoteDataTypedDict", "UnifiedHrisEmployerbenefitOutputTypedDict", "UnifiedHrisEmploymentOutput", "UnifiedHrisEmploymentOutputFieldMappings", "UnifiedHrisEmploymentOutputFieldMappingsTypedDict", "UnifiedHrisEmploymentOutputRemoteData", "UnifiedHrisEmploymentOutputRemoteDataTypedDict", "UnifiedHrisEmploymentOutputTypedDict", "UnifiedHrisGroupOutput", "UnifiedHrisGroupOutputFieldMappings", "UnifiedHrisGroupOutputFieldMappingsTypedDict", "UnifiedHrisGroupOutputRemoteData", "UnifiedHrisGroupOutputRemoteDataTypedDict", "UnifiedHrisGroupOutputTypedDict", "UnifiedHrisLocationOutput", "UnifiedHrisLocationOutputFieldMappings", "UnifiedHrisLocationOutputFieldMappingsTypedDict", "UnifiedHrisLocationOutputRemoteData", "UnifiedHrisLocationOutputRemoteDataTypedDict", "UnifiedHrisLocationOutputTypedDict", "UnifiedHrisPaygroupOutput", "UnifiedHrisPaygroupOutputFieldMappings", "UnifiedHrisPaygroupOutputFieldMappingsTypedDict", "UnifiedHrisPaygroupOutputRemoteData", "UnifiedHrisPaygroupOutputRemoteDataTypedDict", "UnifiedHrisPaygroupOutputTypedDict", "UnifiedHrisPayrollrunOutput", "UnifiedHrisPayrollrunOutputFieldMappings", "UnifiedHrisPayrollrunOutputFieldMappingsTypedDict", "UnifiedHrisPayrollrunOutputRemoteData", "UnifiedHrisPayrollrunOutputRemoteDataTypedDict", "UnifiedHrisPayrollrunOutputTypedDict", "UnifiedHrisTimeoffInput", "UnifiedHrisTimeoffInputFieldMappings", "UnifiedHrisTimeoffInputFieldMappingsTypedDict", "UnifiedHrisTimeoffInputTypedDict", "UnifiedHrisTimeoffOutput", "UnifiedHrisTimeoffOutputFieldMappings", "UnifiedHrisTimeoffOutputFieldMappingsTypedDict", "UnifiedHrisTimeoffOutputRemoteData", "UnifiedHrisTimeoffOutputRemoteDataTypedDict", "UnifiedHrisTimeoffOutputTypedDict", "UnifiedHrisTimeoffbalanceOutput", "UnifiedHrisTimeoffbalanceOutputFieldMappings", "UnifiedHrisTimeoffbalanceOutputFieldMappingsTypedDict", "UnifiedHrisTimeoffbalanceOutputRemoteData", "UnifiedHrisTimeoffbalanceOutputRemoteDataTypedDict", "UnifiedHrisTimeoffbalanceOutputTypedDict", "UnifiedHrisTimesheetEntryInput", "UnifiedHrisTimesheetEntryInputFieldMappings", "UnifiedHrisTimesheetEntryInputFieldMappingsTypedDict", "UnifiedHrisTimesheetEntryInputTypedDict", "UnifiedHrisTimesheetEntryOutput", "UnifiedHrisTimesheetEntryOutputFieldMappings", "UnifiedHrisTimesheetEntryOutputFieldMappingsTypedDict", "UnifiedHrisTimesheetEntryOutputRemoteData", "UnifiedHrisTimesheetEntryOutputRemoteDataTypedDict", "UnifiedHrisTimesheetEntryOutputTypedDict", "UnifiedMarketingautomationActionInput", "UnifiedMarketingautomationActionInputTypedDict", "UnifiedMarketingautomationActionOutput", "UnifiedMarketingautomationActionOutputTypedDict", "UnifiedMarketingautomationAutomationInput", "UnifiedMarketingautomationAutomationInputTypedDict", "UnifiedMarketingautomationAutomationOutput", "UnifiedMarketingautomationAutomationOutputTypedDict", "UnifiedMarketingautomationCampaignInput", "UnifiedMarketingautomationCampaignInputTypedDict", "UnifiedMarketingautomationCampaignOutput", "UnifiedMarketingautomationCampaignOutputTypedDict", "UnifiedMarketingautomationContactInput", "UnifiedMarketingautomationContactInputTypedDict", "UnifiedMarketingautomationContactOutput", "UnifiedMarketingautomationContactOutputTypedDict", "UnifiedMarketingautomationEmailOutput", "UnifiedMarketingautomationEmailOutputTypedDict", "UnifiedMarketingautomationEventOutput", "UnifiedMarketingautomationEventOutputTypedDict", "UnifiedMarketingautomationListInput", "UnifiedMarketingautomationListInputTypedDict", "UnifiedMarketingautomationListOutput", "UnifiedMarketingautomationListOutputTypedDict", "UnifiedMarketingautomationMessageOutput", "UnifiedMarketingautomationMessageOutputTypedDict", "UnifiedMarketingautomationTemplateInput", "UnifiedMarketingautomationTemplateInputTypedDict", "UnifiedMarketingautomationTemplateOutput", "UnifiedMarketingautomationTemplateOutputTypedDict", "UnifiedMarketingautomationUserOutput", "UnifiedMarketingautomationUserOutputTypedDict", "UnifiedTicketingAccountOutput", "UnifiedTicketingAccountOutputTypedDict", "UnifiedTicketingAttachmentInput", "UnifiedTicketingAttachmentInputTypedDict", "UnifiedTicketingAttachmentOutput", "UnifiedTicketingAttachmentOutputTypedDict", "UnifiedTicketingCollectionOutput", "UnifiedTicketingCollectionOutputTypedDict", "UnifiedTicketingCommentInput", "UnifiedTicketingCommentInputAttachments", "UnifiedTicketingCommentInputAttachmentsTypedDict", "UnifiedTicketingCommentInputTypedDict", "UnifiedTicketingCommentOutput", "UnifiedTicketingCommentOutputAttachments", "UnifiedTicketingCommentOutputAttachmentsTypedDict", "UnifiedTicketingCommentOutputTypedDict", "UnifiedTicketingContactOutput", "UnifiedTicketingContactOutputTypedDict", "UnifiedTicketingTagOutput", "UnifiedTicketingTagOutputTypedDict", "UnifiedTicketingTeamOutput", "UnifiedTicketingTeamOutputTypedDict", "UnifiedTicketingTicketInput", "UnifiedTicketingTicketInputAttachments", "UnifiedTicketingTicketInputAttachmentsTypedDict", "UnifiedTicketingTicketInputCollections", "UnifiedTicketingTicketInputCollectionsTypedDict", "UnifiedTicketingTicketInputComment", "UnifiedTicketingTicketInputCommentAttachments", "UnifiedTicketingTicketInputCommentAttachmentsTypedDict", "UnifiedTicketingTicketInputCommentTypedDict", "UnifiedTicketingTicketInputTags", "UnifiedTicketingTicketInputTagsTypedDict", "UnifiedTicketingTicketInputTypedDict", "UnifiedTicketingTicketOutput", "UnifiedTicketingTicketOutputAttachments", "UnifiedTicketingTicketOutputAttachmentsTypedDict", "UnifiedTicketingTicketOutputTypedDict", "UnifiedTicketingUserOutput", "UnifiedTicketingUserOutputTypedDict", "UpdatePullFrequencyDto", "UpdatePullFrequencyDtoTypedDict", "UpdatePullFrequencyResponseBody", "UpdatePullFrequencyResponseBodyTypedDict", "UpdateStatusRequest", "UpdateStatusRequestTypedDict", "UsersModel", "UsersModelTypedDict", "Variant", "VariantTypedDict", "Vertical", "WebhookDto", "WebhookDtoTypedDict", "WebhookResponse", "WebhookResponseTypedDict"] +__all__ = [ + "Address", + "AddressTypedDict", + "AttachmentsModel", + "AttachmentsModelTypedDict", + "CollectionsModel", + "CollectionsModelTypedDict", + "Comment", + "CommentTypedDict", + "Connection", + "ConnectionTypedDict", + "CreateAccountingAccountRequest", + "CreateAccountingAccountRequestTypedDict", + "CreateAccountingAttachmentRequest", + "CreateAccountingAttachmentRequestTypedDict", + "CreateAccountingContactRequest", + "CreateAccountingContactRequestTypedDict", + "CreateAccountingExpenseRequest", + "CreateAccountingExpenseRequestTypedDict", + "CreateAccountingInvoiceRequest", + "CreateAccountingInvoiceRequestTypedDict", + "CreateAccountingJournalEntryRequest", + "CreateAccountingJournalEntryRequestTypedDict", + "CreateAccountingPaymentRequest", + "CreateAccountingPaymentRequestTypedDict", + "CreateAccountingPurchaseOrderRequest", + "CreateAccountingPurchaseOrderRequestTypedDict", + "CreateBatchLinkedUserDto", + "CreateBatchLinkedUserDtoTypedDict", + "CreateCrmCompanyRequest", + "CreateCrmCompanyRequestTypedDict", + "CreateCrmContactRequest", + "CreateCrmContactRequestTypedDict", + "CreateCrmDealRequest", + "CreateCrmDealRequestTypedDict", + "CreateCrmEngagementRequest", + "CreateCrmEngagementRequestTypedDict", + "CreateCrmNoteRequest", + "CreateCrmNoteRequestTypedDict", + "CreateCrmTaskRequest", + "CreateCrmTaskRequestTypedDict", + "CreateEcommerceOrderRequest", + "CreateEcommerceOrderRequestTypedDict", + "CreateEcommerceProductRequest", + "CreateEcommerceProductRequestTypedDict", + "CreateFilestorageFileRequest", + "CreateFilestorageFileRequestTypedDict", + "CreateFilestorageFolderRequest", + "CreateFilestorageFolderRequestTypedDict", + "CreateLinkedUserDto", + "CreateLinkedUserDtoTypedDict", + "CreateMarketingAutomationContactRequest", + "CreateMarketingAutomationContactRequestTypedDict", + "CreateMarketingautomationActionRequest", + "CreateMarketingautomationActionRequestTypedDict", + "CreateMarketingautomationAutomationRequest", + "CreateMarketingautomationAutomationRequestTypedDict", + "CreateMarketingautomationCampaignRequest", + "CreateMarketingautomationCampaignRequestTypedDict", + "CreateMarketingautomationListRequest", + "CreateMarketingautomationListRequestTypedDict", + "CreateMarketingautomationTemplateRequest", + "CreateMarketingautomationTemplateRequestTypedDict", + "CreateProjectDto", + "CreateProjectDtoTypedDict", + "CreateTicketingAttachmentRequest", + "CreateTicketingAttachmentRequestTypedDict", + "CreateTicketingCommentRequest", + "CreateTicketingCommentRequestTypedDict", + "CreateTicketingTicketRequest", + "CreateTicketingTicketRequestTypedDict", + "CreatedAt", + "CreatedAtTypedDict", + "CustomFieldCreateDto", + "CustomFieldCreateDtoDataType", + "CustomFieldCreateDtoObjectTypeOwner", + "CustomFieldCreateDtoTypedDict", + "CustomFieldResponse", + "CustomFieldResponseDataType", + "CustomFieldResponseTypedDict", + "Data", + "DataType", + "DataTypedDict", + "DefineTargetFieldDto", + "DefineTargetFieldDtoTypedDict", + "DeleteRequest", + "DeleteRequestTypedDict", + "Email", + "EmailTypedDict", + "EventResponse", + "EventResponseStatus", + "EventResponseTypedDict", + "FieldMappingsModel", + "FieldMappingsModelTypedDict", + "GetPanoraCoreEventsRequest", + "GetPanoraCoreEventsRequestTypedDict", + "GetRetriedRequestResponseRequest", + "GetRetriedRequestResponseRequestTypedDict", + "ItemsModel", + "ItemsModelTypedDict", + "LineItem", + "LineItemTypedDict", + "LinkedUserResponse", + "LinkedUserResponseTypedDict", + "ListAccountingAccountsRequest", + "ListAccountingAccountsRequestTypedDict", + "ListAccountingAccountsResponse", + "ListAccountingAccountsResponseBody", + "ListAccountingAccountsResponseBodyTypedDict", + "ListAccountingAccountsResponseTypedDict", + "ListAccountingAddressRequest", + "ListAccountingAddressRequestTypedDict", + "ListAccountingAddressResponse", + "ListAccountingAddressResponseBody", + "ListAccountingAddressResponseBodyTypedDict", + "ListAccountingAddressResponseTypedDict", + "ListAccountingAttachmentsRequest", + "ListAccountingAttachmentsRequestTypedDict", + "ListAccountingAttachmentsResponse", + "ListAccountingAttachmentsResponseBody", + "ListAccountingAttachmentsResponseBodyTypedDict", + "ListAccountingAttachmentsResponseTypedDict", + "ListAccountingBalanceSheetsRequest", + "ListAccountingBalanceSheetsRequestTypedDict", + "ListAccountingBalanceSheetsResponse", + "ListAccountingBalanceSheetsResponseBody", + "ListAccountingBalanceSheetsResponseBodyTypedDict", + "ListAccountingBalanceSheetsResponseTypedDict", + "ListAccountingCashflowStatementRequest", + "ListAccountingCashflowStatementRequestTypedDict", + "ListAccountingCashflowStatementResponse", + "ListAccountingCashflowStatementResponseBody", + "ListAccountingCashflowStatementResponseBodyTypedDict", + "ListAccountingCashflowStatementResponseTypedDict", + "ListAccountingCompanyInfosRequest", + "ListAccountingCompanyInfosRequestTypedDict", + "ListAccountingCompanyInfosResponse", + "ListAccountingCompanyInfosResponseBody", + "ListAccountingCompanyInfosResponseBodyTypedDict", + "ListAccountingCompanyInfosResponseTypedDict", + "ListAccountingContactsRequest", + "ListAccountingContactsRequestTypedDict", + "ListAccountingContactsResponse", + "ListAccountingContactsResponseBody", + "ListAccountingContactsResponseBodyTypedDict", + "ListAccountingContactsResponseTypedDict", + "ListAccountingCreditNoteRequest", + "ListAccountingCreditNoteRequestTypedDict", + "ListAccountingCreditNoteResponse", + "ListAccountingCreditNoteResponseBody", + "ListAccountingCreditNoteResponseBodyTypedDict", + "ListAccountingCreditNoteResponseTypedDict", + "ListAccountingExpenseRequest", + "ListAccountingExpenseRequestTypedDict", + "ListAccountingExpenseResponse", + "ListAccountingExpenseResponseBody", + "ListAccountingExpenseResponseBodyTypedDict", + "ListAccountingExpenseResponseTypedDict", + "ListAccountingIncomeStatementRequest", + "ListAccountingIncomeStatementRequestTypedDict", + "ListAccountingIncomeStatementResponse", + "ListAccountingIncomeStatementResponseBody", + "ListAccountingIncomeStatementResponseBodyTypedDict", + "ListAccountingIncomeStatementResponseTypedDict", + "ListAccountingInvoiceRequest", + "ListAccountingInvoiceRequestTypedDict", + "ListAccountingInvoiceResponse", + "ListAccountingInvoiceResponseBody", + "ListAccountingInvoiceResponseBodyTypedDict", + "ListAccountingInvoiceResponseTypedDict", + "ListAccountingItemRequest", + "ListAccountingItemRequestTypedDict", + "ListAccountingItemResponse", + "ListAccountingItemResponseBody", + "ListAccountingItemResponseBodyTypedDict", + "ListAccountingItemResponseTypedDict", + "ListAccountingJournalEntryRequest", + "ListAccountingJournalEntryRequestTypedDict", + "ListAccountingJournalEntryResponse", + "ListAccountingJournalEntryResponseBody", + "ListAccountingJournalEntryResponseBodyTypedDict", + "ListAccountingJournalEntryResponseTypedDict", + "ListAccountingPaymentRequest", + "ListAccountingPaymentRequestTypedDict", + "ListAccountingPaymentResponse", + "ListAccountingPaymentResponseBody", + "ListAccountingPaymentResponseBodyTypedDict", + "ListAccountingPaymentResponseTypedDict", + "ListAccountingPhonenumberRequest", + "ListAccountingPhonenumberRequestTypedDict", + "ListAccountingPhonenumberResponse", + "ListAccountingPhonenumberResponseBody", + "ListAccountingPhonenumberResponseBodyTypedDict", + "ListAccountingPhonenumberResponseTypedDict", + "ListAccountingPurchaseOrderRequest", + "ListAccountingPurchaseOrderRequestTypedDict", + "ListAccountingPurchaseOrderResponse", + "ListAccountingPurchaseOrderResponseBody", + "ListAccountingPurchaseOrderResponseBodyTypedDict", + "ListAccountingPurchaseOrderResponseTypedDict", + "ListAccountingTaxRateRequest", + "ListAccountingTaxRateRequestTypedDict", + "ListAccountingTaxRateResponse", + "ListAccountingTaxRateResponseBody", + "ListAccountingTaxRateResponseBodyTypedDict", + "ListAccountingTaxRateResponseTypedDict", + "ListAccountingTrackingCategorysRequest", + "ListAccountingTrackingCategorysRequestTypedDict", + "ListAccountingTrackingCategorysResponse", + "ListAccountingTrackingCategorysResponseBody", + "ListAccountingTrackingCategorysResponseBodyTypedDict", + "ListAccountingTrackingCategorysResponseTypedDict", + "ListAccountingTransactionRequest", + "ListAccountingTransactionRequestTypedDict", + "ListAccountingTransactionResponse", + "ListAccountingTransactionResponseBody", + "ListAccountingTransactionResponseBodyTypedDict", + "ListAccountingTransactionResponseTypedDict", + "ListAccountingVendorCreditRequest", + "ListAccountingVendorCreditRequestTypedDict", + "ListAccountingVendorCreditResponse", + "ListAccountingVendorCreditResponseBody", + "ListAccountingVendorCreditResponseBodyTypedDict", + "ListAccountingVendorCreditResponseTypedDict", + "ListCrmCompanyRequest", + "ListCrmCompanyRequestTypedDict", + "ListCrmCompanyResponse", + "ListCrmCompanyResponseBody", + "ListCrmCompanyResponseBodyTypedDict", + "ListCrmCompanyResponseTypedDict", + "ListCrmContactsRequest", + "ListCrmContactsRequestTypedDict", + "ListCrmContactsResponse", + "ListCrmContactsResponseBody", + "ListCrmContactsResponseBodyTypedDict", + "ListCrmContactsResponseTypedDict", + "ListCrmDealsRequest", + "ListCrmDealsRequestTypedDict", + "ListCrmDealsResponse", + "ListCrmDealsResponseBody", + "ListCrmDealsResponseBodyTypedDict", + "ListCrmDealsResponseTypedDict", + "ListCrmEngagementsRequest", + "ListCrmEngagementsRequestTypedDict", + "ListCrmEngagementsResponse", + "ListCrmEngagementsResponseBody", + "ListCrmEngagementsResponseBodyTypedDict", + "ListCrmEngagementsResponseTypedDict", + "ListCrmNoteRequest", + "ListCrmNoteRequestTypedDict", + "ListCrmNoteResponse", + "ListCrmNoteResponseBody", + "ListCrmNoteResponseBodyTypedDict", + "ListCrmNoteResponseTypedDict", + "ListCrmStagesRequest", + "ListCrmStagesRequestTypedDict", + "ListCrmStagesResponse", + "ListCrmStagesResponseBody", + "ListCrmStagesResponseBodyTypedDict", + "ListCrmStagesResponseTypedDict", + "ListCrmTaskRequest", + "ListCrmTaskRequestTypedDict", + "ListCrmTaskResponse", + "ListCrmTaskResponseBody", + "ListCrmTaskResponseBodyTypedDict", + "ListCrmTaskResponseTypedDict", + "ListCrmUsersRequest", + "ListCrmUsersRequestTypedDict", + "ListCrmUsersResponse", + "ListCrmUsersResponseBody", + "ListCrmUsersResponseBodyTypedDict", + "ListCrmUsersResponseTypedDict", + "ListEcommerceCustomersRequest", + "ListEcommerceCustomersRequestTypedDict", + "ListEcommerceCustomersResponse", + "ListEcommerceCustomersResponseBody", + "ListEcommerceCustomersResponseBodyTypedDict", + "ListEcommerceCustomersResponseTypedDict", + "ListEcommerceFulfillmentsRequest", + "ListEcommerceFulfillmentsRequestTypedDict", + "ListEcommerceFulfillmentsResponse", + "ListEcommerceFulfillmentsResponseBody", + "ListEcommerceFulfillmentsResponseBodyTypedDict", + "ListEcommerceFulfillmentsResponseTypedDict", + "ListEcommerceOrdersRequest", + "ListEcommerceOrdersRequestTypedDict", + "ListEcommerceOrdersResponse", + "ListEcommerceOrdersResponseBody", + "ListEcommerceOrdersResponseBodyTypedDict", + "ListEcommerceOrdersResponseTypedDict", + "ListEcommerceProductsRequest", + "ListEcommerceProductsRequestTypedDict", + "ListEcommerceProductsResponse", + "ListEcommerceProductsResponseBody", + "ListEcommerceProductsResponseBodyTypedDict", + "ListEcommerceProductsResponseTypedDict", + "ListFilestorageFileRequest", + "ListFilestorageFileRequestTypedDict", + "ListFilestorageFileResponse", + "ListFilestorageFileResponseBody", + "ListFilestorageFileResponseBodyTypedDict", + "ListFilestorageFileResponseTypedDict", + "ListFilestorageFolderRequest", + "ListFilestorageFolderRequestTypedDict", + "ListFilestorageFolderResponse", + "ListFilestorageFolderResponseBody", + "ListFilestorageFolderResponseBodyTypedDict", + "ListFilestorageFolderResponseTypedDict", + "ListFilestorageGroupRequest", + "ListFilestorageGroupRequestTypedDict", + "ListFilestorageGroupResponse", + "ListFilestorageGroupResponseBody", + "ListFilestorageGroupResponseBodyTypedDict", + "ListFilestorageGroupResponseTypedDict", + "ListFilestorageUsersRequest", + "ListFilestorageUsersRequestTypedDict", + "ListFilestorageUsersResponse", + "ListFilestorageUsersResponseBody", + "ListFilestorageUsersResponseBodyTypedDict", + "ListFilestorageUsersResponseTypedDict", + "ListMarketingAutomationContactsRequest", + "ListMarketingAutomationContactsRequestTypedDict", + "ListMarketingAutomationContactsResponse", + "ListMarketingAutomationContactsResponseBody", + "ListMarketingAutomationContactsResponseBodyTypedDict", + "ListMarketingAutomationContactsResponseTypedDict", + "ListMarketingAutomationEventsRequest", + "ListMarketingAutomationEventsRequestTypedDict", + "ListMarketingAutomationEventsResponse", + "ListMarketingAutomationEventsResponseBody", + "ListMarketingAutomationEventsResponseBodyTypedDict", + "ListMarketingAutomationEventsResponseTypedDict", + "ListMarketingAutomationUsersRequest", + "ListMarketingAutomationUsersRequestTypedDict", + "ListMarketingAutomationUsersResponse", + "ListMarketingAutomationUsersResponseBody", + "ListMarketingAutomationUsersResponseBodyTypedDict", + "ListMarketingAutomationUsersResponseTypedDict", + "ListMarketingautomationActionRequest", + "ListMarketingautomationActionRequestTypedDict", + "ListMarketingautomationActionResponse", + "ListMarketingautomationActionResponseBody", + "ListMarketingautomationActionResponseBodyTypedDict", + "ListMarketingautomationActionResponseTypedDict", + "ListMarketingautomationAutomationsRequest", + "ListMarketingautomationAutomationsRequestTypedDict", + "ListMarketingautomationAutomationsResponse", + "ListMarketingautomationAutomationsResponseBody", + "ListMarketingautomationAutomationsResponseBodyTypedDict", + "ListMarketingautomationAutomationsResponseTypedDict", + "ListMarketingautomationCampaignsRequest", + "ListMarketingautomationCampaignsRequestTypedDict", + "ListMarketingautomationCampaignsResponse", + "ListMarketingautomationCampaignsResponseBody", + "ListMarketingautomationCampaignsResponseBodyTypedDict", + "ListMarketingautomationCampaignsResponseTypedDict", + "ListMarketingautomationEmailsRequest", + "ListMarketingautomationEmailsRequestTypedDict", + "ListMarketingautomationEmailsResponse", + "ListMarketingautomationEmailsResponseBody", + "ListMarketingautomationEmailsResponseBodyTypedDict", + "ListMarketingautomationEmailsResponseTypedDict", + "ListMarketingautomationListsRequest", + "ListMarketingautomationListsRequestTypedDict", + "ListMarketingautomationListsResponse", + "ListMarketingautomationListsResponseBody", + "ListMarketingautomationListsResponseBodyTypedDict", + "ListMarketingautomationListsResponseTypedDict", + "ListMarketingautomationMessagesRequest", + "ListMarketingautomationMessagesRequestTypedDict", + "ListMarketingautomationMessagesResponse", + "ListMarketingautomationMessagesResponseBody", + "ListMarketingautomationMessagesResponseBodyTypedDict", + "ListMarketingautomationMessagesResponseTypedDict", + "ListMarketingautomationTemplatesRequest", + "ListMarketingautomationTemplatesRequestTypedDict", + "ListMarketingautomationTemplatesResponse", + "ListMarketingautomationTemplatesResponseBody", + "ListMarketingautomationTemplatesResponseBodyTypedDict", + "ListMarketingautomationTemplatesResponseTypedDict", + "ListTicketingAccountRequest", + "ListTicketingAccountRequestTypedDict", + "ListTicketingAccountResponse", + "ListTicketingAccountResponseBody", + "ListTicketingAccountResponseBodyTypedDict", + "ListTicketingAccountResponseTypedDict", + "ListTicketingAttachmentsRequest", + "ListTicketingAttachmentsRequestTypedDict", + "ListTicketingAttachmentsResponse", + "ListTicketingAttachmentsResponseBody", + "ListTicketingAttachmentsResponseBodyTypedDict", + "ListTicketingAttachmentsResponseTypedDict", + "ListTicketingCollectionsRequest", + "ListTicketingCollectionsRequestTypedDict", + "ListTicketingCollectionsResponse", + "ListTicketingCollectionsResponseBody", + "ListTicketingCollectionsResponseBodyTypedDict", + "ListTicketingCollectionsResponseTypedDict", + "ListTicketingCommentsRequest", + "ListTicketingCommentsRequestTypedDict", + "ListTicketingCommentsResponse", + "ListTicketingCommentsResponseBody", + "ListTicketingCommentsResponseBodyTypedDict", + "ListTicketingCommentsResponseTypedDict", + "ListTicketingContactsRequest", + "ListTicketingContactsRequestTypedDict", + "ListTicketingContactsResponse", + "ListTicketingContactsResponseBody", + "ListTicketingContactsResponseBodyTypedDict", + "ListTicketingContactsResponseTypedDict", + "ListTicketingTagsRequest", + "ListTicketingTagsRequestTypedDict", + "ListTicketingTagsResponse", + "ListTicketingTagsResponseBody", + "ListTicketingTagsResponseBodyTypedDict", + "ListTicketingTagsResponseTypedDict", + "ListTicketingTeamsRequest", + "ListTicketingTeamsRequestTypedDict", + "ListTicketingTeamsResponse", + "ListTicketingTeamsResponseBody", + "ListTicketingTeamsResponseBodyTypedDict", + "ListTicketingTeamsResponseTypedDict", + "ListTicketingTicketRequest", + "ListTicketingTicketRequestTypedDict", + "ListTicketingTicketResponse", + "ListTicketingTicketResponseBody", + "ListTicketingTicketResponseBodyTypedDict", + "ListTicketingTicketResponseTypedDict", + "ListTicketingUsersRequest", + "ListTicketingUsersRequestTypedDict", + "ListTicketingUsersResponse", + "ListTicketingUsersResponseBody", + "ListTicketingUsersResponseBodyTypedDict", + "ListTicketingUsersResponseTypedDict", + "LoginDto", + "LoginDtoTypedDict", + "MapFieldToProviderDto", + "MapFieldToProviderDtoTypedDict", + "Method", + "ModifiedAt", + "ModifiedAtTypedDict", + "ObjectTypeOwner", + "OwnerType", + "PassThroughRequestDto", + "PassThroughRequestDtoMethod", + "PassThroughRequestDtoTypedDict", + "PathParamVertical", + "Phone", + "PhoneTypedDict", + "ProjectResponse", + "ProjectResponseTypedDict", + "QueryBody", + "QueryBodyTypedDict", + "QueryRequest", + "QueryRequestTypedDict", + "RagQueryOutput", + "RagQueryOutputTypedDict", + "RemoteData", + "RemoteDataTypedDict", + "RemoteIDRequest", + "RemoteIDRequestTypedDict", + "RequestFormat", + "RequestFormatTypedDict", + "RequestRequest", + "RequestRequestTypedDict", + "RequestResponseBody", + "RequestResponseBodyTypedDict", + "ResyncStatusDto", + "ResyncStatusDtoTypedDict", + "RetrieveAccountingAccountRequest", + "RetrieveAccountingAccountRequestTypedDict", + "RetrieveAccountingAddressRequest", + "RetrieveAccountingAddressRequestTypedDict", + "RetrieveAccountingAttachmentRequest", + "RetrieveAccountingAttachmentRequestTypedDict", + "RetrieveAccountingBalanceSheetRequest", + "RetrieveAccountingBalanceSheetRequestTypedDict", + "RetrieveAccountingCashflowStatementRequest", + "RetrieveAccountingCashflowStatementRequestTypedDict", + "RetrieveAccountingCompanyInfoRequest", + "RetrieveAccountingCompanyInfoRequestTypedDict", + "RetrieveAccountingContactRequest", + "RetrieveAccountingContactRequestTypedDict", + "RetrieveAccountingCreditNoteRequest", + "RetrieveAccountingCreditNoteRequestTypedDict", + "RetrieveAccountingExpenseRequest", + "RetrieveAccountingExpenseRequestTypedDict", + "RetrieveAccountingIncomeStatementRequest", + "RetrieveAccountingIncomeStatementRequestTypedDict", + "RetrieveAccountingInvoiceRequest", + "RetrieveAccountingInvoiceRequestTypedDict", + "RetrieveAccountingItemRequest", + "RetrieveAccountingItemRequestTypedDict", + "RetrieveAccountingJournalEntryRequest", + "RetrieveAccountingJournalEntryRequestTypedDict", + "RetrieveAccountingPaymentRequest", + "RetrieveAccountingPaymentRequestTypedDict", + "RetrieveAccountingPhonenumberRequest", + "RetrieveAccountingPhonenumberRequestTypedDict", + "RetrieveAccountingPurchaseOrderRequest", + "RetrieveAccountingPurchaseOrderRequestTypedDict", + "RetrieveAccountingTaxRateRequest", + "RetrieveAccountingTaxRateRequestTypedDict", + "RetrieveAccountingTrackingCategoryRequest", + "RetrieveAccountingTrackingCategoryRequestTypedDict", + "RetrieveAccountingTransactionRequest", + "RetrieveAccountingTransactionRequestTypedDict", + "RetrieveAccountingVendorCreditRequest", + "RetrieveAccountingVendorCreditRequestTypedDict", + "RetrieveCollectionRequest", + "RetrieveCollectionRequestTypedDict", + "RetrieveCrmCompanyRequest", + "RetrieveCrmCompanyRequestTypedDict", + "RetrieveCrmContactRequest", + "RetrieveCrmContactRequestTypedDict", + "RetrieveCrmDealRequest", + "RetrieveCrmDealRequestTypedDict", + "RetrieveCrmEngagementRequest", + "RetrieveCrmEngagementRequestTypedDict", + "RetrieveCrmNoteRequest", + "RetrieveCrmNoteRequestTypedDict", + "RetrieveCrmStageRequest", + "RetrieveCrmStageRequestTypedDict", + "RetrieveCrmTaskRequest", + "RetrieveCrmTaskRequestTypedDict", + "RetrieveCrmUserRequest", + "RetrieveCrmUserRequestTypedDict", + "RetrieveEcommerceCustomerRequest", + "RetrieveEcommerceCustomerRequestTypedDict", + "RetrieveEcommerceFulfillmentRequest", + "RetrieveEcommerceFulfillmentRequestTypedDict", + "RetrieveEcommerceOrderRequest", + "RetrieveEcommerceOrderRequestTypedDict", + "RetrieveEcommerceProductRequest", + "RetrieveEcommerceProductRequestTypedDict", + "RetrieveFilestorageFileRequest", + "RetrieveFilestorageFileRequestTypedDict", + "RetrieveFilestorageFolderRequest", + "RetrieveFilestorageFolderRequestTypedDict", + "RetrieveFilestorageGroupRequest", + "RetrieveFilestorageGroupRequestTypedDict", + "RetrieveFilestorageUserRequest", + "RetrieveFilestorageUserRequestTypedDict", + "RetrieveLinkedUserRequest", + "RetrieveLinkedUserRequestTypedDict", + "RetrieveMarketingAutomationContactRequest", + "RetrieveMarketingAutomationContactRequestTypedDict", + "RetrieveMarketingAutomationUserRequest", + "RetrieveMarketingAutomationUserRequestTypedDict", + "RetrieveMarketingautomationActionRequest", + "RetrieveMarketingautomationActionRequestTypedDict", + "RetrieveMarketingautomationAutomationRequest", + "RetrieveMarketingautomationAutomationRequestTypedDict", + "RetrieveMarketingautomationCampaignRequest", + "RetrieveMarketingautomationCampaignRequestTypedDict", + "RetrieveMarketingautomationEmailRequest", + "RetrieveMarketingautomationEmailRequestTypedDict", + "RetrieveMarketingautomationEventRequest", + "RetrieveMarketingautomationEventRequestTypedDict", + "RetrieveMarketingautomationListRequest", + "RetrieveMarketingautomationListRequestTypedDict", + "RetrieveMarketingautomationMessageRequest", + "RetrieveMarketingautomationMessageRequestTypedDict", + "RetrieveMarketingautomationTemplateRequest", + "RetrieveMarketingautomationTemplateRequestTypedDict", + "RetrieveTicketingAccountRequest", + "RetrieveTicketingAccountRequestTypedDict", + "RetrieveTicketingAttachmentRequest", + "RetrieveTicketingAttachmentRequestTypedDict", + "RetrieveTicketingCommentRequest", + "RetrieveTicketingCommentRequestTypedDict", + "RetrieveTicketingCommentResponseBody", + "RetrieveTicketingCommentResponseBodyTypedDict", + "RetrieveTicketingContactRequest", + "RetrieveTicketingContactRequestTypedDict", + "RetrieveTicketingContactResponseBody", + "RetrieveTicketingContactResponseBodyTypedDict", + "RetrieveTicketingTagRequest", + "RetrieveTicketingTagRequestTypedDict", + "RetrieveTicketingTeamRequest", + "RetrieveTicketingTeamRequestTypedDict", + "RetrieveTicketingTicketRequest", + "RetrieveTicketingTicketRequestTypedDict", + "RetrieveTicketingUserRequest", + "RetrieveTicketingUserRequestTypedDict", + "SDKError", + "Security", + "SecurityTypedDict", + "SignatureVerificationDto", + "SignatureVerificationDtoTypedDict", + "Status", + "StatusRequest", + "StatusRequestTypedDict", + "TagsModel", + "TagsModelTypedDict", + "TokenType", + "Type", + "UnifiedAccountingAccountInput", + "UnifiedAccountingAccountInputFieldMappings", + "UnifiedAccountingAccountInputFieldMappingsTypedDict", + "UnifiedAccountingAccountInputTypedDict", + "UnifiedAccountingAccountOutput", + "UnifiedAccountingAccountOutputTypedDict", + "UnifiedAccountingAddressOutput", + "UnifiedAccountingAddressOutputFieldMappings", + "UnifiedAccountingAddressOutputFieldMappingsTypedDict", + "UnifiedAccountingAddressOutputRemoteData", + "UnifiedAccountingAddressOutputRemoteDataTypedDict", + "UnifiedAccountingAddressOutputTypedDict", + "UnifiedAccountingAttachmentInput", + "UnifiedAccountingAttachmentInputFieldMappings", + "UnifiedAccountingAttachmentInputFieldMappingsTypedDict", + "UnifiedAccountingAttachmentInputTypedDict", + "UnifiedAccountingAttachmentOutput", + "UnifiedAccountingAttachmentOutputFieldMappings", + "UnifiedAccountingAttachmentOutputFieldMappingsTypedDict", + "UnifiedAccountingAttachmentOutputRemoteData", + "UnifiedAccountingAttachmentOutputRemoteDataTypedDict", + "UnifiedAccountingAttachmentOutputTypedDict", + "UnifiedAccountingBalancesheetOutput", + "UnifiedAccountingBalancesheetOutputFieldMappings", + "UnifiedAccountingBalancesheetOutputFieldMappingsTypedDict", + "UnifiedAccountingBalancesheetOutputRemoteData", + "UnifiedAccountingBalancesheetOutputRemoteDataTypedDict", + "UnifiedAccountingBalancesheetOutputTypedDict", + "UnifiedAccountingCashflowstatementOutput", + "UnifiedAccountingCashflowstatementOutputFieldMappings", + "UnifiedAccountingCashflowstatementOutputFieldMappingsTypedDict", + "UnifiedAccountingCashflowstatementOutputRemoteData", + "UnifiedAccountingCashflowstatementOutputRemoteDataTypedDict", + "UnifiedAccountingCashflowstatementOutputTypedDict", + "UnifiedAccountingCompanyinfoOutput", + "UnifiedAccountingCompanyinfoOutputFieldMappings", + "UnifiedAccountingCompanyinfoOutputFieldMappingsTypedDict", + "UnifiedAccountingCompanyinfoOutputRemoteData", + "UnifiedAccountingCompanyinfoOutputRemoteDataTypedDict", + "UnifiedAccountingCompanyinfoOutputTypedDict", + "UnifiedAccountingContactInput", + "UnifiedAccountingContactInputFieldMappings", + "UnifiedAccountingContactInputFieldMappingsTypedDict", + "UnifiedAccountingContactInputTypedDict", + "UnifiedAccountingContactOutput", + "UnifiedAccountingContactOutputFieldMappings", + "UnifiedAccountingContactOutputFieldMappingsTypedDict", + "UnifiedAccountingContactOutputRemoteData", + "UnifiedAccountingContactOutputRemoteDataTypedDict", + "UnifiedAccountingContactOutputTypedDict", + "UnifiedAccountingCreditnoteOutput", + "UnifiedAccountingCreditnoteOutputFieldMappings", + "UnifiedAccountingCreditnoteOutputFieldMappingsTypedDict", + "UnifiedAccountingCreditnoteOutputRemoteData", + "UnifiedAccountingCreditnoteOutputRemoteDataTypedDict", + "UnifiedAccountingCreditnoteOutputTypedDict", + "UnifiedAccountingExpenseInput", + "UnifiedAccountingExpenseInputFieldMappings", + "UnifiedAccountingExpenseInputFieldMappingsTypedDict", + "UnifiedAccountingExpenseInputTypedDict", + "UnifiedAccountingExpenseOutput", + "UnifiedAccountingExpenseOutputFieldMappings", + "UnifiedAccountingExpenseOutputFieldMappingsTypedDict", + "UnifiedAccountingExpenseOutputRemoteData", + "UnifiedAccountingExpenseOutputRemoteDataTypedDict", + "UnifiedAccountingExpenseOutputTypedDict", + "UnifiedAccountingIncomestatementOutput", + "UnifiedAccountingIncomestatementOutputFieldMappings", + "UnifiedAccountingIncomestatementOutputFieldMappingsTypedDict", + "UnifiedAccountingIncomestatementOutputRemoteData", + "UnifiedAccountingIncomestatementOutputRemoteDataTypedDict", + "UnifiedAccountingIncomestatementOutputTypedDict", + "UnifiedAccountingInvoiceInput", + "UnifiedAccountingInvoiceInputFieldMappings", + "UnifiedAccountingInvoiceInputFieldMappingsTypedDict", + "UnifiedAccountingInvoiceInputTypedDict", + "UnifiedAccountingInvoiceOutput", + "UnifiedAccountingInvoiceOutputFieldMappings", + "UnifiedAccountingInvoiceOutputFieldMappingsTypedDict", + "UnifiedAccountingInvoiceOutputRemoteData", + "UnifiedAccountingInvoiceOutputRemoteDataTypedDict", + "UnifiedAccountingInvoiceOutputTypedDict", + "UnifiedAccountingItemOutput", + "UnifiedAccountingItemOutputFieldMappings", + "UnifiedAccountingItemOutputFieldMappingsTypedDict", + "UnifiedAccountingItemOutputRemoteData", + "UnifiedAccountingItemOutputRemoteDataTypedDict", + "UnifiedAccountingItemOutputTypedDict", + "UnifiedAccountingJournalentryInput", + "UnifiedAccountingJournalentryInputFieldMappings", + "UnifiedAccountingJournalentryInputFieldMappingsTypedDict", + "UnifiedAccountingJournalentryInputTypedDict", + "UnifiedAccountingJournalentryOutput", + "UnifiedAccountingJournalentryOutputFieldMappings", + "UnifiedAccountingJournalentryOutputFieldMappingsTypedDict", + "UnifiedAccountingJournalentryOutputRemoteData", + "UnifiedAccountingJournalentryOutputRemoteDataTypedDict", + "UnifiedAccountingJournalentryOutputTypedDict", + "UnifiedAccountingPaymentInput", + "UnifiedAccountingPaymentInputFieldMappings", + "UnifiedAccountingPaymentInputFieldMappingsTypedDict", + "UnifiedAccountingPaymentInputTypedDict", + "UnifiedAccountingPaymentOutput", + "UnifiedAccountingPaymentOutputFieldMappings", + "UnifiedAccountingPaymentOutputFieldMappingsTypedDict", + "UnifiedAccountingPaymentOutputRemoteData", + "UnifiedAccountingPaymentOutputRemoteDataTypedDict", + "UnifiedAccountingPaymentOutputTypedDict", + "UnifiedAccountingPhonenumberOutput", + "UnifiedAccountingPhonenumberOutputFieldMappings", + "UnifiedAccountingPhonenumberOutputFieldMappingsTypedDict", + "UnifiedAccountingPhonenumberOutputRemoteData", + "UnifiedAccountingPhonenumberOutputRemoteDataTypedDict", + "UnifiedAccountingPhonenumberOutputTypedDict", + "UnifiedAccountingPurchaseorderInput", + "UnifiedAccountingPurchaseorderInputFieldMappings", + "UnifiedAccountingPurchaseorderInputFieldMappingsTypedDict", + "UnifiedAccountingPurchaseorderInputTypedDict", + "UnifiedAccountingPurchaseorderOutput", + "UnifiedAccountingPurchaseorderOutputFieldMappings", + "UnifiedAccountingPurchaseorderOutputFieldMappingsTypedDict", + "UnifiedAccountingPurchaseorderOutputRemoteData", + "UnifiedAccountingPurchaseorderOutputRemoteDataTypedDict", + "UnifiedAccountingPurchaseorderOutputTypedDict", + "UnifiedAccountingTaxrateOutput", + "UnifiedAccountingTaxrateOutputFieldMappings", + "UnifiedAccountingTaxrateOutputFieldMappingsTypedDict", + "UnifiedAccountingTaxrateOutputRemoteData", + "UnifiedAccountingTaxrateOutputRemoteDataTypedDict", + "UnifiedAccountingTaxrateOutputTypedDict", + "UnifiedAccountingTrackingcategoryOutput", + "UnifiedAccountingTrackingcategoryOutputFieldMappings", + "UnifiedAccountingTrackingcategoryOutputFieldMappingsTypedDict", + "UnifiedAccountingTrackingcategoryOutputRemoteData", + "UnifiedAccountingTrackingcategoryOutputRemoteDataTypedDict", + "UnifiedAccountingTrackingcategoryOutputTypedDict", + "UnifiedAccountingTransactionOutput", + "UnifiedAccountingTransactionOutputFieldMappings", + "UnifiedAccountingTransactionOutputFieldMappingsTypedDict", + "UnifiedAccountingTransactionOutputRemoteData", + "UnifiedAccountingTransactionOutputRemoteDataTypedDict", + "UnifiedAccountingTransactionOutputTypedDict", + "UnifiedAccountingVendorcreditOutput", + "UnifiedAccountingVendorcreditOutputFieldMappings", + "UnifiedAccountingVendorcreditOutputFieldMappingsTypedDict", + "UnifiedAccountingVendorcreditOutputRemoteData", + "UnifiedAccountingVendorcreditOutputRemoteDataTypedDict", + "UnifiedAccountingVendorcreditOutputTypedDict", + "UnifiedCrmCompanyInput", + "UnifiedCrmCompanyInputTypedDict", + "UnifiedCrmCompanyOutput", + "UnifiedCrmCompanyOutputTypedDict", + "UnifiedCrmContactInput", + "UnifiedCrmContactInputTypedDict", + "UnifiedCrmContactOutput", + "UnifiedCrmContactOutputTypedDict", + "UnifiedCrmDealInput", + "UnifiedCrmDealInputTypedDict", + "UnifiedCrmDealOutput", + "UnifiedCrmDealOutputTypedDict", + "UnifiedCrmEngagementInput", + "UnifiedCrmEngagementInputTypedDict", + "UnifiedCrmEngagementOutput", + "UnifiedCrmEngagementOutputTypedDict", + "UnifiedCrmNoteInput", + "UnifiedCrmNoteInputTypedDict", + "UnifiedCrmNoteOutput", + "UnifiedCrmNoteOutputTypedDict", + "UnifiedCrmStageOutput", + "UnifiedCrmStageOutputCreatedAt", + "UnifiedCrmStageOutputCreatedAtTypedDict", + "UnifiedCrmStageOutputModifiedAt", + "UnifiedCrmStageOutputModifiedAtTypedDict", + "UnifiedCrmStageOutputTypedDict", + "UnifiedCrmTaskInput", + "UnifiedCrmTaskInputTypedDict", + "UnifiedCrmTaskOutput", + "UnifiedCrmTaskOutputTypedDict", + "UnifiedCrmUserOutput", + "UnifiedCrmUserOutputTypedDict", + "UnifiedEcommerceCustomerOutput", + "UnifiedEcommerceCustomerOutputFieldMappings", + "UnifiedEcommerceCustomerOutputFieldMappingsTypedDict", + "UnifiedEcommerceCustomerOutputRemoteData", + "UnifiedEcommerceCustomerOutputRemoteDataTypedDict", + "UnifiedEcommerceCustomerOutputTypedDict", + "UnifiedEcommerceFulfillmentOutput", + "UnifiedEcommerceFulfillmentOutputFieldMappings", + "UnifiedEcommerceFulfillmentOutputFieldMappingsTypedDict", + "UnifiedEcommerceFulfillmentOutputRemoteData", + "UnifiedEcommerceFulfillmentOutputRemoteDataTypedDict", + "UnifiedEcommerceFulfillmentOutputTypedDict", + "UnifiedEcommerceOrderInput", + "UnifiedEcommerceOrderInputFieldMappings", + "UnifiedEcommerceOrderInputFieldMappingsTypedDict", + "UnifiedEcommerceOrderInputTypedDict", + "UnifiedEcommerceOrderOutput", + "UnifiedEcommerceOrderOutputFieldMappings", + "UnifiedEcommerceOrderOutputFieldMappingsTypedDict", + "UnifiedEcommerceOrderOutputRemoteData", + "UnifiedEcommerceOrderOutputRemoteDataTypedDict", + "UnifiedEcommerceOrderOutputTypedDict", + "UnifiedEcommerceProductInput", + "UnifiedEcommerceProductInputFieldMappings", + "UnifiedEcommerceProductInputFieldMappingsTypedDict", + "UnifiedEcommerceProductInputTypedDict", + "UnifiedEcommerceProductOutput", + "UnifiedEcommerceProductOutputFieldMappings", + "UnifiedEcommerceProductOutputFieldMappingsTypedDict", + "UnifiedEcommerceProductOutputRemoteData", + "UnifiedEcommerceProductOutputRemoteDataTypedDict", + "UnifiedEcommerceProductOutputTypedDict", + "UnifiedFilestorageFileInput", + "UnifiedFilestorageFileInputTypedDict", + "UnifiedFilestorageFileOutput", + "UnifiedFilestorageFileOutputTypedDict", + "UnifiedFilestorageFolderInput", + "UnifiedFilestorageFolderInputTypedDict", + "UnifiedFilestorageFolderOutput", + "UnifiedFilestorageFolderOutputTypedDict", + "UnifiedFilestorageGroupOutput", + "UnifiedFilestorageGroupOutputTypedDict", + "UnifiedFilestorageUserOutput", + "UnifiedFilestorageUserOutputTypedDict", + "UnifiedMarketingautomationActionInput", + "UnifiedMarketingautomationActionInputTypedDict", + "UnifiedMarketingautomationActionOutput", + "UnifiedMarketingautomationActionOutputTypedDict", + "UnifiedMarketingautomationAutomationInput", + "UnifiedMarketingautomationAutomationInputTypedDict", + "UnifiedMarketingautomationAutomationOutput", + "UnifiedMarketingautomationAutomationOutputTypedDict", + "UnifiedMarketingautomationCampaignInput", + "UnifiedMarketingautomationCampaignInputTypedDict", + "UnifiedMarketingautomationCampaignOutput", + "UnifiedMarketingautomationCampaignOutputTypedDict", + "UnifiedMarketingautomationContactInput", + "UnifiedMarketingautomationContactInputTypedDict", + "UnifiedMarketingautomationContactOutput", + "UnifiedMarketingautomationContactOutputTypedDict", + "UnifiedMarketingautomationEmailOutput", + "UnifiedMarketingautomationEmailOutputTypedDict", + "UnifiedMarketingautomationEventOutput", + "UnifiedMarketingautomationEventOutputTypedDict", + "UnifiedMarketingautomationListInput", + "UnifiedMarketingautomationListInputTypedDict", + "UnifiedMarketingautomationListOutput", + "UnifiedMarketingautomationListOutputTypedDict", + "UnifiedMarketingautomationMessageOutput", + "UnifiedMarketingautomationMessageOutputTypedDict", + "UnifiedMarketingautomationTemplateInput", + "UnifiedMarketingautomationTemplateInputTypedDict", + "UnifiedMarketingautomationTemplateOutput", + "UnifiedMarketingautomationTemplateOutputTypedDict", + "UnifiedMarketingautomationUserOutput", + "UnifiedMarketingautomationUserOutputTypedDict", + "UnifiedTicketingAccountOutput", + "UnifiedTicketingAccountOutputTypedDict", + "UnifiedTicketingAttachmentInput", + "UnifiedTicketingAttachmentInputTypedDict", + "UnifiedTicketingAttachmentOutput", + "UnifiedTicketingAttachmentOutputTypedDict", + "UnifiedTicketingCollectionOutput", + "UnifiedTicketingCollectionOutputTypedDict", + "UnifiedTicketingCommentInput", + "UnifiedTicketingCommentInputAttachments", + "UnifiedTicketingCommentInputAttachmentsTypedDict", + "UnifiedTicketingCommentInputTypedDict", + "UnifiedTicketingCommentOutput", + "UnifiedTicketingCommentOutputAttachments", + "UnifiedTicketingCommentOutputAttachmentsTypedDict", + "UnifiedTicketingCommentOutputTypedDict", + "UnifiedTicketingContactOutput", + "UnifiedTicketingContactOutputTypedDict", + "UnifiedTicketingTagOutput", + "UnifiedTicketingTagOutputTypedDict", + "UnifiedTicketingTeamOutput", + "UnifiedTicketingTeamOutputTypedDict", + "UnifiedTicketingTicketInput", + "UnifiedTicketingTicketInputAttachments", + "UnifiedTicketingTicketInputAttachmentsTypedDict", + "UnifiedTicketingTicketInputCollections", + "UnifiedTicketingTicketInputCollectionsTypedDict", + "UnifiedTicketingTicketInputComment", + "UnifiedTicketingTicketInputCommentAttachments", + "UnifiedTicketingTicketInputCommentAttachmentsTypedDict", + "UnifiedTicketingTicketInputCommentTypedDict", + "UnifiedTicketingTicketInputTags", + "UnifiedTicketingTicketInputTagsTypedDict", + "UnifiedTicketingTicketInputTypedDict", + "UnifiedTicketingTicketOutput", + "UnifiedTicketingTicketOutputAttachments", + "UnifiedTicketingTicketOutputAttachmentsTypedDict", + "UnifiedTicketingTicketOutputTypedDict", + "UnifiedTicketingUserOutput", + "UnifiedTicketingUserOutputTypedDict", + "UpdatePullFrequencyDto", + "UpdatePullFrequencyDtoTypedDict", + "UpdateStatusRequest", + "UpdateStatusRequestTypedDict", + "UsersModel", + "UsersModelTypedDict", + "Variant", + "VariantTypedDict", + "Vertical", + "WebhookDto", + "WebhookDtoTypedDict", + "WebhookResponse", + "WebhookResponseTypedDict", +] diff --git a/src/panora_sdk/models/address.py b/src/panora_sdk/models/address.py index eb2aaec..2baef6a 100644 --- a/src/panora_sdk/models/address.py +++ b/src/panora_sdk/models/address.py @@ -3,7 +3,7 @@ from __future__ import annotations from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import TypedDict +from typing_extensions import TypedDict class AddressTypedDict(TypedDict): @@ -23,30 +23,46 @@ class AddressTypedDict(TypedDict): r"""The address type. Authorized values are either PERSONAL or WORK.""" owner_type: Nullable[str] r"""The owner type of the address""" - + class Address(BaseModel): street_1: Nullable[str] r"""The street""" + street_2: Nullable[str] r"""More information about the street""" + city: Nullable[str] r"""The city""" + state: Nullable[str] r"""The state""" + postal_code: Nullable[str] r"""The postal code""" + country: Nullable[str] r"""The country""" + address_type: Nullable[str] r"""The address type. Authorized values are either PERSONAL or WORK.""" + owner_type: Nullable[str] r"""The owner type of the address""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] - nullable_fields = ["street_1", "street_2", "city", "state", "postal_code", "country", "address_type", "owner_type"] + nullable_fields = [ + "street_1", + "street_2", + "city", + "state", + "postal_code", + "country", + "address_type", + "owner_type", + ] null_default_fields = [] serialized = handler(self) @@ -56,21 +72,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/connection.py b/src/panora_sdk/models/connection.py index 806999d..1e851ba 100644 --- a/src/panora_sdk/models/connection.py +++ b/src/panora_sdk/models/connection.py @@ -4,15 +4,17 @@ from datetime import datetime from enum import Enum from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class TokenType(str, Enum): r"""Strategy type""" + OAUTH2 = "oauth2" APIKEY = "apikey" BASIC = "basic" + class ConnectionTypedDict(TypedDict): id_connection: str r"""Unique identifier for the connection""" @@ -40,33 +42,44 @@ class ConnectionTypedDict(TypedDict): r"""Project ID associated with the connection""" id_linked_user: str r"""Linked user ID associated with the connection""" - + class Connection(BaseModel): id_connection: str r"""Unique identifier for the connection""" + status: str r"""Status of the connection""" + provider_slug: str r"""Slug for the provider""" + vertical: str r"""Vertical category of the connection""" + account_url: str r"""URL of the account""" + token_type: TokenType r"""Strategy type""" + access_token: str r"""Access token for the connection""" + refresh_token: str r"""Refresh token for the connection""" + expiration_timestamp: datetime r"""Expiration timestamp of the access token""" + created_at: datetime r"""Timestamp when the connection was created""" + connection_token: str r"""UUID Token for the connection""" + id_project: str r"""Project ID associated with the connection""" + id_linked_user: str r"""Linked user ID associated with the connection""" - diff --git a/src/panora_sdk/models/createaccountingaccountop.py b/src/panora_sdk/models/createaccountingaccountop.py index dc7a5e2..fb526f8 100644 --- a/src/panora_sdk/models/createaccountingaccountop.py +++ b/src/panora_sdk/models/createaccountingaccountop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingaccountinput import UnifiedAccountingAccountInput, UnifiedAccountingAccountInputTypedDict +from .unifiedaccountingaccountinput import ( + UnifiedAccountingAccountInput, + UnifiedAccountingAccountInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingAccountRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingAccountRequestTypedDict(TypedDict): unified_accounting_account_input: UnifiedAccountingAccountInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingAccountRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_account_input: Annotated[UnifiedAccountingAccountInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_account_input: Annotated[ + UnifiedAccountingAccountInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createaccountingattachmentop.py b/src/panora_sdk/models/createaccountingattachmentop.py index c214139..78facb0 100644 --- a/src/panora_sdk/models/createaccountingattachmentop.py +++ b/src/panora_sdk/models/createaccountingattachmentop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingattachmentinput import UnifiedAccountingAttachmentInput, UnifiedAccountingAttachmentInputTypedDict +from .unifiedaccountingattachmentinput import ( + UnifiedAccountingAttachmentInput, + UnifiedAccountingAttachmentInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingAttachmentRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingAttachmentRequestTypedDict(TypedDict): unified_accounting_attachment_input: UnifiedAccountingAttachmentInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingAttachmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_attachment_input: Annotated[UnifiedAccountingAttachmentInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_attachment_input: Annotated[ + UnifiedAccountingAttachmentInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createaccountingcontactop.py b/src/panora_sdk/models/createaccountingcontactop.py index 394cc5d..3e3debc 100644 --- a/src/panora_sdk/models/createaccountingcontactop.py +++ b/src/panora_sdk/models/createaccountingcontactop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingcontactinput import UnifiedAccountingContactInput, UnifiedAccountingContactInputTypedDict +from .unifiedaccountingcontactinput import ( + UnifiedAccountingContactInput, + UnifiedAccountingContactInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingContactRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingContactRequestTypedDict(TypedDict): unified_accounting_contact_input: UnifiedAccountingContactInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingContactRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_contact_input: Annotated[UnifiedAccountingContactInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_contact_input: Annotated[ + UnifiedAccountingContactInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createaccountingexpenseop.py b/src/panora_sdk/models/createaccountingexpenseop.py index f607acf..6cde356 100644 --- a/src/panora_sdk/models/createaccountingexpenseop.py +++ b/src/panora_sdk/models/createaccountingexpenseop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingexpenseinput import UnifiedAccountingExpenseInput, UnifiedAccountingExpenseInputTypedDict +from .unifiedaccountingexpenseinput import ( + UnifiedAccountingExpenseInput, + UnifiedAccountingExpenseInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingExpenseRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingExpenseRequestTypedDict(TypedDict): unified_accounting_expense_input: UnifiedAccountingExpenseInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingExpenseRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_expense_input: Annotated[UnifiedAccountingExpenseInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_expense_input: Annotated[ + UnifiedAccountingExpenseInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createaccountinginvoiceop.py b/src/panora_sdk/models/createaccountinginvoiceop.py index c24c42f..ba13378 100644 --- a/src/panora_sdk/models/createaccountinginvoiceop.py +++ b/src/panora_sdk/models/createaccountinginvoiceop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountinginvoiceinput import UnifiedAccountingInvoiceInput, UnifiedAccountingInvoiceInputTypedDict +from .unifiedaccountinginvoiceinput import ( + UnifiedAccountingInvoiceInput, + UnifiedAccountingInvoiceInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingInvoiceRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingInvoiceRequestTypedDict(TypedDict): unified_accounting_invoice_input: UnifiedAccountingInvoiceInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingInvoiceRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_invoice_input: Annotated[UnifiedAccountingInvoiceInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_invoice_input: Annotated[ + UnifiedAccountingInvoiceInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createaccountingjournalentryop.py b/src/panora_sdk/models/createaccountingjournalentryop.py index 88d6a7f..8d5f372 100644 --- a/src/panora_sdk/models/createaccountingjournalentryop.py +++ b/src/panora_sdk/models/createaccountingjournalentryop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingjournalentryinput import UnifiedAccountingJournalentryInput, UnifiedAccountingJournalentryInputTypedDict +from .unifiedaccountingjournalentryinput import ( + UnifiedAccountingJournalentryInput, + UnifiedAccountingJournalentryInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingJournalEntryRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingJournalEntryRequestTypedDict(TypedDict): unified_accounting_journalentry_input: UnifiedAccountingJournalentryInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingJournalEntryRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_journalentry_input: Annotated[UnifiedAccountingJournalentryInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_journalentry_input: Annotated[ + UnifiedAccountingJournalentryInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createaccountingpaymentop.py b/src/panora_sdk/models/createaccountingpaymentop.py index 687a918..35b8e83 100644 --- a/src/panora_sdk/models/createaccountingpaymentop.py +++ b/src/panora_sdk/models/createaccountingpaymentop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingpaymentinput import UnifiedAccountingPaymentInput, UnifiedAccountingPaymentInputTypedDict +from .unifiedaccountingpaymentinput import ( + UnifiedAccountingPaymentInput, + UnifiedAccountingPaymentInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingPaymentRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingPaymentRequestTypedDict(TypedDict): unified_accounting_payment_input: UnifiedAccountingPaymentInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingPaymentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_payment_input: Annotated[UnifiedAccountingPaymentInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_payment_input: Annotated[ + UnifiedAccountingPaymentInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createaccountingpurchaseorderop.py b/src/panora_sdk/models/createaccountingpurchaseorderop.py index c3fdad4..97b6625 100644 --- a/src/panora_sdk/models/createaccountingpurchaseorderop.py +++ b/src/panora_sdk/models/createaccountingpurchaseorderop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingpurchaseorderinput import UnifiedAccountingPurchaseorderInput, UnifiedAccountingPurchaseorderInputTypedDict +from .unifiedaccountingpurchaseorderinput import ( + UnifiedAccountingPurchaseorderInput, + UnifiedAccountingPurchaseorderInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateAccountingPurchaseOrderRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateAccountingPurchaseOrderRequestTypedDict(TypedDict): unified_accounting_purchaseorder_input: UnifiedAccountingPurchaseorderInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateAccountingPurchaseOrderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_accounting_purchaseorder_input: Annotated[UnifiedAccountingPurchaseorderInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_accounting_purchaseorder_input: Annotated[ + UnifiedAccountingPurchaseorderInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createatsactivityop.py b/src/panora_sdk/models/createatsactivityop.py deleted file mode 100644 index 65cbba6..0000000 --- a/src/panora_sdk/models/createatsactivityop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsactivityinput import UnifiedAtsActivityInput, UnifiedAtsActivityInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateAtsActivityRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_ats_activity_input: UnifiedAtsActivityInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class CreateAtsActivityRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_ats_activity_input: Annotated[UnifiedAtsActivityInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/createatsapplicationop.py b/src/panora_sdk/models/createatsapplicationop.py deleted file mode 100644 index f73a2fa..0000000 --- a/src/panora_sdk/models/createatsapplicationop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsapplicationinput import UnifiedAtsApplicationInput, UnifiedAtsApplicationInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateAtsApplicationRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_ats_application_input: UnifiedAtsApplicationInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class CreateAtsApplicationRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_ats_application_input: Annotated[UnifiedAtsApplicationInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/createatsattachmentop.py b/src/panora_sdk/models/createatsattachmentop.py deleted file mode 100644 index b1c3027..0000000 --- a/src/panora_sdk/models/createatsattachmentop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsattachmentinput import UnifiedAtsAttachmentInput, UnifiedAtsAttachmentInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateAtsAttachmentRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_ats_attachment_input: UnifiedAtsAttachmentInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class CreateAtsAttachmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_ats_attachment_input: Annotated[UnifiedAtsAttachmentInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/createatscandidateop.py b/src/panora_sdk/models/createatscandidateop.py deleted file mode 100644 index bbee952..0000000 --- a/src/panora_sdk/models/createatscandidateop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatscandidateinput import UnifiedAtsCandidateInput, UnifiedAtsCandidateInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateAtsCandidateRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_ats_candidate_input: UnifiedAtsCandidateInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class CreateAtsCandidateRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_ats_candidate_input: Annotated[UnifiedAtsCandidateInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/createatsinterviewop.py b/src/panora_sdk/models/createatsinterviewop.py deleted file mode 100644 index 5330e31..0000000 --- a/src/panora_sdk/models/createatsinterviewop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsinterviewinput import UnifiedAtsInterviewInput, UnifiedAtsInterviewInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateAtsInterviewRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_ats_interview_input: UnifiedAtsInterviewInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class CreateAtsInterviewRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_ats_interview_input: Annotated[UnifiedAtsInterviewInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/createbatchlinkeduserdto.py b/src/panora_sdk/models/createbatchlinkeduserdto.py index 03842b5..b4e0c75 100644 --- a/src/panora_sdk/models/createbatchlinkeduserdto.py +++ b/src/panora_sdk/models/createbatchlinkeduserdto.py @@ -3,7 +3,8 @@ from __future__ import annotations from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import List, TypedDict +from typing import List +from typing_extensions import TypedDict class CreateBatchLinkedUserDtoTypedDict(TypedDict): @@ -11,14 +12,15 @@ class CreateBatchLinkedUserDtoTypedDict(TypedDict): r"""The ids of the users in the context of your own software""" alias: Nullable[str] r"""Your company alias""" - + class CreateBatchLinkedUserDto(BaseModel): linked_user_origin_ids: Nullable[List[str]] r"""The ids of the users in the context of your own software""" + alias: Nullable[str] r"""Your company alias""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -32,21 +34,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/createcrmcompanyop.py b/src/panora_sdk/models/createcrmcompanyop.py index 9c52a53..3cabdc5 100644 --- a/src/panora_sdk/models/createcrmcompanyop.py +++ b/src/panora_sdk/models/createcrmcompanyop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedcrmcompanyinput import UnifiedCrmCompanyInput, UnifiedCrmCompanyInputTypedDict +from .unifiedcrmcompanyinput import ( + UnifiedCrmCompanyInput, + UnifiedCrmCompanyInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateCrmCompanyRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateCrmCompanyRequestTypedDict(TypedDict): unified_crm_company_input: UnifiedCrmCompanyInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original CRM software.""" - + class CreateCrmCompanyRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_crm_company_input: Annotated[UnifiedCrmCompanyInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_crm_company_input: Annotated[ + UnifiedCrmCompanyInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original CRM software.""" - diff --git a/src/panora_sdk/models/createcrmcontactop.py b/src/panora_sdk/models/createcrmcontactop.py index 8000f8d..aefd84e 100644 --- a/src/panora_sdk/models/createcrmcontactop.py +++ b/src/panora_sdk/models/createcrmcontactop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedcrmcontactinput import UnifiedCrmContactInput, UnifiedCrmContactInputTypedDict +from .unifiedcrmcontactinput import ( + UnifiedCrmContactInput, + UnifiedCrmContactInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateCrmContactRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateCrmContactRequestTypedDict(TypedDict): unified_crm_contact_input: UnifiedCrmContactInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original CRM software.""" - + class CreateCrmContactRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_crm_contact_input: Annotated[UnifiedCrmContactInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_crm_contact_input: Annotated[ + UnifiedCrmContactInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original CRM software.""" - diff --git a/src/panora_sdk/models/createcrmdealop.py b/src/panora_sdk/models/createcrmdealop.py index f92dd92..8795a82 100644 --- a/src/panora_sdk/models/createcrmdealop.py +++ b/src/panora_sdk/models/createcrmdealop.py @@ -3,10 +3,15 @@ from __future__ import annotations from .unifiedcrmdealinput import UnifiedCrmDealInput, UnifiedCrmDealInputTypedDict from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateCrmDealRequestTypedDict(TypedDict): @@ -15,12 +20,23 @@ class CreateCrmDealRequestTypedDict(TypedDict): unified_crm_deal_input: UnifiedCrmDealInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class CreateCrmDealRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_crm_deal_input: Annotated[UnifiedCrmDealInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_crm_deal_input: Annotated[ + UnifiedCrmDealInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/createcrmengagementop.py b/src/panora_sdk/models/createcrmengagementop.py index 8a828d6..3f65c44 100644 --- a/src/panora_sdk/models/createcrmengagementop.py +++ b/src/panora_sdk/models/createcrmengagementop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedcrmengagementinput import UnifiedCrmEngagementInput, UnifiedCrmEngagementInputTypedDict +from .unifiedcrmengagementinput import ( + UnifiedCrmEngagementInput, + UnifiedCrmEngagementInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateCrmEngagementRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateCrmEngagementRequestTypedDict(TypedDict): unified_crm_engagement_input: UnifiedCrmEngagementInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class CreateCrmEngagementRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_crm_engagement_input: Annotated[UnifiedCrmEngagementInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_crm_engagement_input: Annotated[ + UnifiedCrmEngagementInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/createcrmnoteop.py b/src/panora_sdk/models/createcrmnoteop.py index 255c06b..7bd45af 100644 --- a/src/panora_sdk/models/createcrmnoteop.py +++ b/src/panora_sdk/models/createcrmnoteop.py @@ -3,10 +3,15 @@ from __future__ import annotations from .unifiedcrmnoteinput import UnifiedCrmNoteInput, UnifiedCrmNoteInputTypedDict from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateCrmNoteRequestTypedDict(TypedDict): @@ -15,12 +20,23 @@ class CreateCrmNoteRequestTypedDict(TypedDict): unified_crm_note_input: UnifiedCrmNoteInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class CreateCrmNoteRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_crm_note_input: Annotated[UnifiedCrmNoteInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_crm_note_input: Annotated[ + UnifiedCrmNoteInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/createcrmtaskop.py b/src/panora_sdk/models/createcrmtaskop.py index 8635e4c..d87c26a 100644 --- a/src/panora_sdk/models/createcrmtaskop.py +++ b/src/panora_sdk/models/createcrmtaskop.py @@ -3,10 +3,15 @@ from __future__ import annotations from .unifiedcrmtaskinput import UnifiedCrmTaskInput, UnifiedCrmTaskInputTypedDict from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateCrmTaskRequestTypedDict(TypedDict): @@ -15,12 +20,23 @@ class CreateCrmTaskRequestTypedDict(TypedDict): unified_crm_task_input: UnifiedCrmTaskInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class CreateCrmTaskRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_crm_task_input: Annotated[UnifiedCrmTaskInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_crm_task_input: Annotated[ + UnifiedCrmTaskInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/createecommerceorderop.py b/src/panora_sdk/models/createecommerceorderop.py index 28a5ad1..76855b6 100644 --- a/src/panora_sdk/models/createecommerceorderop.py +++ b/src/panora_sdk/models/createecommerceorderop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedecommerceorderinput import UnifiedEcommerceOrderInput, UnifiedEcommerceOrderInputTypedDict +from .unifiedecommerceorderinput import ( + UnifiedEcommerceOrderInput, + UnifiedEcommerceOrderInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateEcommerceOrderRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateEcommerceOrderRequestTypedDict(TypedDict): unified_ecommerce_order_input: UnifiedEcommerceOrderInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateEcommerceOrderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_ecommerce_order_input: Annotated[UnifiedEcommerceOrderInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_ecommerce_order_input: Annotated[ + UnifiedEcommerceOrderInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createecommerceproductop.py b/src/panora_sdk/models/createecommerceproductop.py index f729bfd..5dcaafd 100644 --- a/src/panora_sdk/models/createecommerceproductop.py +++ b/src/panora_sdk/models/createecommerceproductop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedecommerceproductinput import UnifiedEcommerceProductInput, UnifiedEcommerceProductInputTypedDict +from .unifiedecommerceproductinput import ( + UnifiedEcommerceProductInput, + UnifiedEcommerceProductInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateEcommerceProductRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateEcommerceProductRequestTypedDict(TypedDict): unified_ecommerce_product_input: UnifiedEcommerceProductInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateEcommerceProductRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_ecommerce_product_input: Annotated[UnifiedEcommerceProductInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_ecommerce_product_input: Annotated[ + UnifiedEcommerceProductInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createfilestoragefileop.py b/src/panora_sdk/models/createfilestoragefileop.py index 80fa3ac..9089b86 100644 --- a/src/panora_sdk/models/createfilestoragefileop.py +++ b/src/panora_sdk/models/createfilestoragefileop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedfilestoragefileinput import UnifiedFilestorageFileInput, UnifiedFilestorageFileInputTypedDict +from .unifiedfilestoragefileinput import ( + UnifiedFilestorageFileInput, + UnifiedFilestorageFileInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateFilestorageFileRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateFilestorageFileRequestTypedDict(TypedDict): unified_filestorage_file_input: UnifiedFilestorageFileInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateFilestorageFileRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_filestorage_file_input: Annotated[UnifiedFilestorageFileInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_filestorage_file_input: Annotated[ + UnifiedFilestorageFileInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createfilestoragefolderop.py b/src/panora_sdk/models/createfilestoragefolderop.py index 354d6ef..fb8b940 100644 --- a/src/panora_sdk/models/createfilestoragefolderop.py +++ b/src/panora_sdk/models/createfilestoragefolderop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedfilestoragefolderinput import UnifiedFilestorageFolderInput, UnifiedFilestorageFolderInputTypedDict +from .unifiedfilestoragefolderinput import ( + UnifiedFilestorageFolderInput, + UnifiedFilestorageFolderInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateFilestorageFolderRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateFilestorageFolderRequestTypedDict(TypedDict): unified_filestorage_folder_input: UnifiedFilestorageFolderInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class CreateFilestorageFolderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_filestorage_folder_input: Annotated[UnifiedFilestorageFolderInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_filestorage_folder_input: Annotated[ + UnifiedFilestorageFolderInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/createhrisemployeeop.py b/src/panora_sdk/models/createhrisemployeeop.py deleted file mode 100644 index 22f2507..0000000 --- a/src/panora_sdk/models/createhrisemployeeop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisemployeeinput import UnifiedHrisEmployeeInput, UnifiedHrisEmployeeInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateHrisEmployeeRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_hris_employee_input: UnifiedHrisEmployeeInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class CreateHrisEmployeeRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_hris_employee_input: Annotated[UnifiedHrisEmployeeInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/createhristimeoffop.py b/src/panora_sdk/models/createhristimeoffop.py deleted file mode 100644 index 6b96497..0000000 --- a/src/panora_sdk/models/createhristimeoffop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhristimeoffinput import UnifiedHrisTimeoffInput, UnifiedHrisTimeoffInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateHrisTimeoffRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_hris_timeoff_input: UnifiedHrisTimeoffInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class CreateHrisTimeoffRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_hris_timeoff_input: Annotated[UnifiedHrisTimeoffInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/createhristimesheetentryop.py b/src/panora_sdk/models/createhristimesheetentryop.py deleted file mode 100644 index 3f4ae60..0000000 --- a/src/panora_sdk/models/createhristimesheetentryop.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhristimesheetentryinput import UnifiedHrisTimesheetEntryInput, UnifiedHrisTimesheetEntryInputTypedDict -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class CreateHrisTimesheetentryRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - unified_hris_timesheet_entry_input: UnifiedHrisTimesheetEntryInputTypedDict - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class CreateHrisTimesheetentryRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - unified_hris_timesheet_entry_input: Annotated[UnifiedHrisTimesheetEntryInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/createlinkeduserdto.py b/src/panora_sdk/models/createlinkeduserdto.py index 723def4..2106b16 100644 --- a/src/panora_sdk/models/createlinkeduserdto.py +++ b/src/panora_sdk/models/createlinkeduserdto.py @@ -3,7 +3,7 @@ from __future__ import annotations from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import TypedDict +from typing_extensions import TypedDict class CreateLinkedUserDtoTypedDict(TypedDict): @@ -11,14 +11,15 @@ class CreateLinkedUserDtoTypedDict(TypedDict): r"""The id of the user in the context of your own software""" alias: Nullable[str] r"""Your company alias""" - + class CreateLinkedUserDto(BaseModel): linked_user_origin_id: str r"""The id of the user in the context of your own software""" + alias: Nullable[str] r"""Your company alias""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -32,21 +33,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/createmarketingautomationactionop.py b/src/panora_sdk/models/createmarketingautomationactionop.py index 44bd4d1..cad180b 100644 --- a/src/panora_sdk/models/createmarketingautomationactionop.py +++ b/src/panora_sdk/models/createmarketingautomationactionop.py @@ -1,26 +1,47 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationactioninput import UnifiedMarketingautomationActionInput, UnifiedMarketingautomationActionInputTypedDict +from .unifiedmarketingautomationactioninput import ( + UnifiedMarketingautomationActionInput, + UnifiedMarketingautomationActionInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateMarketingautomationActionRequestTypedDict(TypedDict): x_connection_token: str r"""The connection token""" - unified_marketingautomation_action_input: UnifiedMarketingautomationActionInputTypedDict + unified_marketingautomation_action_input: ( + UnifiedMarketingautomationActionInputTypedDict + ) remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class CreateMarketingautomationActionRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_marketingautomation_action_input: Annotated[UnifiedMarketingautomationActionInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_marketingautomation_action_input: Annotated[ + UnifiedMarketingautomationActionInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/createmarketingautomationautomationop.py b/src/panora_sdk/models/createmarketingautomationautomationop.py index 3a0c61f..0b9cd02 100644 --- a/src/panora_sdk/models/createmarketingautomationautomationop.py +++ b/src/panora_sdk/models/createmarketingautomationautomationop.py @@ -1,26 +1,47 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationautomationinput import UnifiedMarketingautomationAutomationInput, UnifiedMarketingautomationAutomationInputTypedDict +from .unifiedmarketingautomationautomationinput import ( + UnifiedMarketingautomationAutomationInput, + UnifiedMarketingautomationAutomationInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateMarketingautomationAutomationRequestTypedDict(TypedDict): x_connection_token: str r"""The connection token""" - unified_marketingautomation_automation_input: UnifiedMarketingautomationAutomationInputTypedDict + unified_marketingautomation_automation_input: ( + UnifiedMarketingautomationAutomationInputTypedDict + ) remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class CreateMarketingautomationAutomationRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_marketingautomation_automation_input: Annotated[UnifiedMarketingautomationAutomationInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_marketingautomation_automation_input: Annotated[ + UnifiedMarketingautomationAutomationInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/createmarketingautomationcampaignop.py b/src/panora_sdk/models/createmarketingautomationcampaignop.py index 477d570..a16bef8 100644 --- a/src/panora_sdk/models/createmarketingautomationcampaignop.py +++ b/src/panora_sdk/models/createmarketingautomationcampaignop.py @@ -1,26 +1,47 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationcampaigninput import UnifiedMarketingautomationCampaignInput, UnifiedMarketingautomationCampaignInputTypedDict +from .unifiedmarketingautomationcampaigninput import ( + UnifiedMarketingautomationCampaignInput, + UnifiedMarketingautomationCampaignInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateMarketingautomationCampaignRequestTypedDict(TypedDict): x_connection_token: str r"""The connection token""" - unified_marketingautomation_campaign_input: UnifiedMarketingautomationCampaignInputTypedDict + unified_marketingautomation_campaign_input: ( + UnifiedMarketingautomationCampaignInputTypedDict + ) remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class CreateMarketingautomationCampaignRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_marketingautomation_campaign_input: Annotated[UnifiedMarketingautomationCampaignInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_marketingautomation_campaign_input: Annotated[ + UnifiedMarketingautomationCampaignInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/createmarketingautomationcontactop.py b/src/panora_sdk/models/createmarketingautomationcontactop.py index 1018fc4..ffec6a9 100644 --- a/src/panora_sdk/models/createmarketingautomationcontactop.py +++ b/src/panora_sdk/models/createmarketingautomationcontactop.py @@ -1,26 +1,47 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationcontactinput import UnifiedMarketingautomationContactInput, UnifiedMarketingautomationContactInputTypedDict +from .unifiedmarketingautomationcontactinput import ( + UnifiedMarketingautomationContactInput, + UnifiedMarketingautomationContactInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateMarketingAutomationContactRequestTypedDict(TypedDict): x_connection_token: str r"""The connection token""" - unified_marketingautomation_contact_input: UnifiedMarketingautomationContactInputTypedDict + unified_marketingautomation_contact_input: ( + UnifiedMarketingautomationContactInputTypedDict + ) remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class CreateMarketingAutomationContactRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_marketingautomation_contact_input: Annotated[UnifiedMarketingautomationContactInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_marketingautomation_contact_input: Annotated[ + UnifiedMarketingautomationContactInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/createmarketingautomationlistop.py b/src/panora_sdk/models/createmarketingautomationlistop.py index 596c330..fb7b032 100644 --- a/src/panora_sdk/models/createmarketingautomationlistop.py +++ b/src/panora_sdk/models/createmarketingautomationlistop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationlistinput import UnifiedMarketingautomationListInput, UnifiedMarketingautomationListInputTypedDict +from .unifiedmarketingautomationlistinput import ( + UnifiedMarketingautomationListInput, + UnifiedMarketingautomationListInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateMarketingautomationListRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateMarketingautomationListRequestTypedDict(TypedDict): unified_marketingautomation_list_input: UnifiedMarketingautomationListInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class CreateMarketingautomationListRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_marketingautomation_list_input: Annotated[UnifiedMarketingautomationListInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_marketingautomation_list_input: Annotated[ + UnifiedMarketingautomationListInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/createmarketingautomationtemplateop.py b/src/panora_sdk/models/createmarketingautomationtemplateop.py index f87cbe2..40d8fb6 100644 --- a/src/panora_sdk/models/createmarketingautomationtemplateop.py +++ b/src/panora_sdk/models/createmarketingautomationtemplateop.py @@ -1,26 +1,47 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationtemplateinput import UnifiedMarketingautomationTemplateInput, UnifiedMarketingautomationTemplateInputTypedDict +from .unifiedmarketingautomationtemplateinput import ( + UnifiedMarketingautomationTemplateInput, + UnifiedMarketingautomationTemplateInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateMarketingautomationTemplateRequestTypedDict(TypedDict): x_connection_token: str r"""The connection token""" - unified_marketingautomation_template_input: UnifiedMarketingautomationTemplateInputTypedDict + unified_marketingautomation_template_input: ( + UnifiedMarketingautomationTemplateInputTypedDict + ) remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class CreateMarketingautomationTemplateRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_marketingautomation_template_input: Annotated[UnifiedMarketingautomationTemplateInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_marketingautomation_template_input: Annotated[ + UnifiedMarketingautomationTemplateInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/createprojectdto.py b/src/panora_sdk/models/createprojectdto.py index 2b0ffcf..d6aa2ee 100644 --- a/src/panora_sdk/models/createprojectdto.py +++ b/src/panora_sdk/models/createprojectdto.py @@ -2,8 +2,8 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import Optional, TypedDict -from typing_extensions import NotRequired +from typing import Optional +from typing_extensions import NotRequired, TypedDict class CreateProjectDtoTypedDict(TypedDict): @@ -13,13 +13,14 @@ class CreateProjectDtoTypedDict(TypedDict): r"""The user ID""" id_organization: NotRequired[str] r"""The organization ID""" - + class CreateProjectDto(BaseModel): name: str r"""The name of the project""" + id_user: str r"""The user ID""" + id_organization: Optional[str] = None r"""The organization ID""" - diff --git a/src/panora_sdk/models/createticketingattachmentop.py b/src/panora_sdk/models/createticketingattachmentop.py index 77dcf7d..a45a963 100644 --- a/src/panora_sdk/models/createticketingattachmentop.py +++ b/src/panora_sdk/models/createticketingattachmentop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingattachmentinput import UnifiedTicketingAttachmentInput, UnifiedTicketingAttachmentInputTypedDict +from .unifiedticketingattachmentinput import ( + UnifiedTicketingAttachmentInput, + UnifiedTicketingAttachmentInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateTicketingAttachmentRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateTicketingAttachmentRequestTypedDict(TypedDict): unified_ticketing_attachment_input: UnifiedTicketingAttachmentInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class CreateTicketingAttachmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_ticketing_attachment_input: Annotated[UnifiedTicketingAttachmentInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_ticketing_attachment_input: Annotated[ + UnifiedTicketingAttachmentInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/createticketingcommentop.py b/src/panora_sdk/models/createticketingcommentop.py index ebc1fe4..be5f52a 100644 --- a/src/panora_sdk/models/createticketingcommentop.py +++ b/src/panora_sdk/models/createticketingcommentop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingcommentinput import UnifiedTicketingCommentInput, UnifiedTicketingCommentInputTypedDict +from .unifiedticketingcommentinput import ( + UnifiedTicketingCommentInput, + UnifiedTicketingCommentInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateTicketingCommentRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateTicketingCommentRequestTypedDict(TypedDict): unified_ticketing_comment_input: UnifiedTicketingCommentInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class CreateTicketingCommentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_ticketing_comment_input: Annotated[UnifiedTicketingCommentInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_ticketing_comment_input: Annotated[ + UnifiedTicketingCommentInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/createticketingticketop.py b/src/panora_sdk/models/createticketingticketop.py index 69e7c26..331a80d 100644 --- a/src/panora_sdk/models/createticketingticketop.py +++ b/src/panora_sdk/models/createticketingticketop.py @@ -1,12 +1,20 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingticketinput import UnifiedTicketingTicketInput, UnifiedTicketingTicketInputTypedDict +from .unifiedticketingticketinput import ( + UnifiedTicketingTicketInput, + UnifiedTicketingTicketInputTypedDict, +) from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata, RequestMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + QueryParamMetadata, + RequestMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class CreateTicketingTicketRequestTypedDict(TypedDict): @@ -15,12 +23,23 @@ class CreateTicketingTicketRequestTypedDict(TypedDict): unified_ticketing_ticket_input: UnifiedTicketingTicketInputTypedDict remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class CreateTicketingTicketRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - unified_ticketing_ticket_input: Annotated[UnifiedTicketingTicketInput, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + unified_ticketing_ticket_input: Annotated[ + UnifiedTicketingTicketInput, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/customfieldcreatedto.py b/src/panora_sdk/models/customfieldcreatedto.py index 800128c..f87f964 100644 --- a/src/panora_sdk/models/customfieldcreatedto.py +++ b/src/panora_sdk/models/customfieldcreatedto.py @@ -4,7 +4,7 @@ from enum import Enum from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import TypedDict +from typing_extensions import TypedDict class CustomFieldCreateDtoObjectTypeOwner(str, Enum): @@ -18,11 +18,14 @@ class CustomFieldCreateDtoObjectTypeOwner(str, Enum): STAGE = "stage" USER = "user" + class CustomFieldCreateDtoDataType(str, Enum): r"""The data type of the custom field""" + STRING = "string" NUMBER = "number" + class CustomFieldCreateDtoTypedDict(TypedDict): object_type_owner: Nullable[CustomFieldCreateDtoObjectTypeOwner] name: Nullable[str] @@ -37,27 +40,41 @@ class CustomFieldCreateDtoTypedDict(TypedDict): r"""The name of the source software/provider""" linked_user_id: Nullable[str] r"""The linked user ID""" - + class CustomFieldCreateDto(BaseModel): object_type_owner: Nullable[CustomFieldCreateDtoObjectTypeOwner] + name: Nullable[str] r"""The name of the custom field""" + description: Nullable[str] r"""The description of the custom field""" + data_type: Nullable[CustomFieldCreateDtoDataType] r"""The data type of the custom field""" + source_custom_field_id: Nullable[str] r"""The source custom field ID""" + source_provider: Nullable[str] r"""The name of the source software/provider""" + linked_user_id: Nullable[str] r"""The linked user ID""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] - nullable_fields = ["object_type_owner", "name", "description", "data_type", "source_custom_field_id", "source_provider", "linked_user_id"] + nullable_fields = [ + "object_type_owner", + "name", + "description", + "data_type", + "source_custom_field_id", + "source_provider", + "linked_user_id", + ] null_default_fields = [] serialized = handler(self) @@ -67,21 +84,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/customfieldresponse.py b/src/panora_sdk/models/customfieldresponse.py index d026bd9..8cd2906 100644 --- a/src/panora_sdk/models/customfieldresponse.py +++ b/src/panora_sdk/models/customfieldresponse.py @@ -5,14 +5,16 @@ from enum import Enum from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import TypedDict +from typing_extensions import TypedDict class CustomFieldResponseDataType(str, Enum): r"""Attribute Data Type""" + STRING = "string" NUMBER = "number" + class CustomFieldResponseTypedDict(TypedDict): id_attribute: Nullable[str] r"""Attribute Id""" @@ -42,42 +44,70 @@ class CustomFieldResponseTypedDict(TypedDict): r"""Attribute Created Date""" modified_at: Nullable[datetime] r"""Attribute Modified Date""" - + class CustomFieldResponse(BaseModel): id_attribute: Nullable[str] r"""Attribute Id""" + status: Nullable[str] r"""Attribute Status""" + ressource_owner_type: Nullable[str] r"""Attribute Ressource Owner Type""" + slug: Nullable[str] r"""Attribute Slug""" + description: Nullable[str] r"""Attribute Description""" + data_type: Nullable[CustomFieldResponseDataType] r"""Attribute Data Type""" + remote_id: Nullable[str] r"""Attribute Remote Id""" + source: Nullable[str] r"""Attribute Source""" + id_entity: Nullable[str] r"""Attribute Entity Id""" + id_project: Nullable[str] r"""Attribute Project Id""" + scope: Nullable[str] r"""Attribute Scope""" + id_consumer: Nullable[str] r"""Attribute Consumer Id""" + created_at: Nullable[datetime] r"""Attribute Created Date""" + modified_at: Nullable[datetime] r"""Attribute Modified Date""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] - nullable_fields = ["id_attribute", "status", "ressource_owner_type", "slug", "description", "data_type", "remote_id", "source", "id_entity", "id_project", "scope", "id_consumer", "created_at", "modified_at"] + nullable_fields = [ + "id_attribute", + "status", + "ressource_owner_type", + "slug", + "description", + "data_type", + "remote_id", + "source", + "id_entity", + "id_project", + "scope", + "id_consumer", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -87,21 +117,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/deductionitem.py b/src/panora_sdk/models/deductionitem.py deleted file mode 100644 index a4c0a47..0000000 --- a/src/panora_sdk/models/deductionitem.py +++ /dev/null @@ -1,57 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class DeductionItemTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the deduction""" - employee_deduction: NotRequired[Nullable[float]] - r"""The amount of employee deduction""" - company_deduction: NotRequired[Nullable[float]] - r"""The amount of company deduction""" - - -class DeductionItem(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the deduction""" - employee_deduction: OptionalNullable[float] = UNSET - r"""The amount of employee deduction""" - company_deduction: OptionalNullable[float] = UNSET - r"""The amount of company deduction""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "employee_deduction", "company_deduction"] - nullable_fields = ["name", "employee_deduction", "company_deduction"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/definetargetfielddto.py b/src/panora_sdk/models/definetargetfielddto.py index 9b3f669..fe7bb62 100644 --- a/src/panora_sdk/models/definetargetfielddto.py +++ b/src/panora_sdk/models/definetargetfielddto.py @@ -4,7 +4,7 @@ from enum import Enum from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import TypedDict +from typing_extensions import TypedDict class ObjectTypeOwner(str, Enum): @@ -18,11 +18,14 @@ class ObjectTypeOwner(str, Enum): STAGE = "stage" USER = "user" + class DataType(str, Enum): r"""The data type of the target field""" + STRING = "string" NUMBER = "number" + class DefineTargetFieldDtoTypedDict(TypedDict): object_type_owner: Nullable[ObjectTypeOwner] name: Nullable[str] @@ -31,17 +34,20 @@ class DefineTargetFieldDtoTypedDict(TypedDict): r"""The description of the target field""" data_type: Nullable[DataType] r"""The data type of the target field""" - + class DefineTargetFieldDto(BaseModel): object_type_owner: Nullable[ObjectTypeOwner] + name: Nullable[str] r"""The name of the target field""" + description: Nullable[str] r"""The description of the target field""" + data_type: Nullable[DataType] r"""The data type of the target field""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -55,21 +61,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/deleteop.py b/src/panora_sdk/models/deleteop.py index 323f96c..f493065 100644 --- a/src/panora_sdk/models/deleteop.py +++ b/src/panora_sdk/models/deleteop.py @@ -3,16 +3,16 @@ from __future__ import annotations from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, PathParamMetadata -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class DeleteRequestTypedDict(TypedDict): id: str r"""id of the webhook to delete.""" - + class DeleteRequest(BaseModel): - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the webhook to delete.""" - diff --git a/src/panora_sdk/models/earningitem.py b/src/panora_sdk/models/earningitem.py deleted file mode 100644 index ef9a694..0000000 --- a/src/panora_sdk/models/earningitem.py +++ /dev/null @@ -1,53 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class EarningItemTypedDict(TypedDict): - amount: NotRequired[Nullable[float]] - r"""The amount of the earning""" - type: NotRequired[Nullable[str]] - r"""The type of the earning""" - - -class EarningItem(BaseModel): - amount: OptionalNullable[float] = UNSET - r"""The amount of the earning""" - type: OptionalNullable[str] = UNSET - r"""The type of the earning""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["amount", "type"] - nullable_fields = ["amount", "type"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/email.py b/src/panora_sdk/models/email.py index fa745a1..b958d69 100644 --- a/src/panora_sdk/models/email.py +++ b/src/panora_sdk/models/email.py @@ -2,17 +2,24 @@ from __future__ import annotations from enum import Enum -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class OwnerType(str, Enum): r"""The owner type of an email""" + COMPANY = "COMPANY" CONTACT = "CONTACT" + class EmailTypedDict(TypedDict): email_address: Nullable[str] r"""The email address""" @@ -20,16 +27,18 @@ class EmailTypedDict(TypedDict): r"""The email address type. Authorized values are either PERSONAL or WORK.""" owner_type: NotRequired[Nullable[OwnerType]] r"""The owner type of an email""" - + class Email(BaseModel): email_address: Nullable[str] r"""The email address""" + email_address_type: Nullable[str] r"""The email address type. Authorized values are either PERSONAL or WORK.""" + owner_type: OptionalNullable[OwnerType] = UNSET r"""The owner type of an email""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["owner_type"] @@ -43,21 +52,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/eventresponse.py b/src/panora_sdk/models/eventresponse.py index 562071b..3cca71f 100644 --- a/src/panora_sdk/models/eventresponse.py +++ b/src/panora_sdk/models/eventresponse.py @@ -4,11 +4,12 @@ from datetime import datetime from enum import Enum from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class Type(str, Enum): r"""Scope of the event""" + CRM_CONTACT_CREATED = "crm.contact.created" CRM_CONTACT_PULLED = "crm.contact.pulled" CRM_COMPANY_CREATED = "crm.company.created" @@ -66,18 +67,23 @@ class Type(str, Enum): FILESTORAGE_SHAREDLINK_PULLED = "filestorage.sharedlink.pulled" CONNECTION_CREATED = "connection.created" + class EventResponseStatus(str, Enum): r"""Status of the event""" + SUCCESS = "success" FAIL = "fail" + class Method(str, Enum): r"""HTTP method used for the event""" + GET = "GET" POST = "POST" PUT = "PUT" DELETE = "DELETE" + class EventResponseTypedDict(TypedDict): id_event: str r"""Unique identifier for the event""" @@ -101,29 +107,38 @@ class EventResponseTypedDict(TypedDict): r"""Timestamp of the event""" id_linked_user: str r"""Linked user ID associated with the event""" - + class EventResponse(BaseModel): id_event: str r"""Unique identifier for the event""" + id_connection: str r"""Connection ID associated with the event""" + id_project: str r"""Project ID associated with the event""" + type: Type r"""Scope of the event""" + status: EventResponseStatus r"""Status of the event""" + direction: str r"""Direction of the event""" + method: Method r"""HTTP method used for the event""" + url: str r"""URL associated with the event""" + provider: str r"""Provider associated with the event""" + timestamp: datetime r"""Timestamp of the event""" + id_linked_user: str r"""Linked user ID associated with the event""" - diff --git a/src/panora_sdk/models/getpanoracoreeventsop.py b/src/panora_sdk/models/getpanoracoreeventsop.py index 022c819..c1813ee 100644 --- a/src/panora_sdk/models/getpanoracoreeventsop.py +++ b/src/panora_sdk/models/getpanoracoreeventsop.py @@ -3,16 +3,22 @@ from __future__ import annotations from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, QueryParamMetadata -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class GetPanoraCoreEventsRequestTypedDict(TypedDict): page: NotRequired[float] limit: NotRequired[float] - + class GetPanoraCoreEventsRequest(BaseModel): - page: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 1 - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 10 - + page: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None diff --git a/src/panora_sdk/models/getretriedrequestresponseop.py b/src/panora_sdk/models/getretriedrequestresponseop.py index db731d0..7d74719 100644 --- a/src/panora_sdk/models/getretriedrequestresponseop.py +++ b/src/panora_sdk/models/getretriedrequestresponseop.py @@ -4,16 +4,18 @@ from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, PathParamMetadata import pydantic -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class GetRetriedRequestResponseRequestTypedDict(TypedDict): retry_id: str r"""id of the retryJob returned when you initiated a passthrough request.""" - + class GetRetriedRequestResponseRequest(BaseModel): - retry_id: Annotated[str, pydantic.Field(alias="retryId"), FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + retry_id: Annotated[ + str, + pydantic.Field(alias="retryId"), + FieldMetadata(path=PathParamMetadata(style="simple", explode=False)), + ] r"""id of the retryJob returned when you initiated a passthrough request.""" - diff --git a/src/panora_sdk/models/lineitem.py b/src/panora_sdk/models/lineitem.py index 3b81738..2fbe277 100644 --- a/src/panora_sdk/models/lineitem.py +++ b/src/panora_sdk/models/lineitem.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Optional, TypedDict -from typing_extensions import NotRequired +from typing import Optional +from typing_extensions import NotRequired, TypedDict class LineItemTypedDict(TypedDict): @@ -27,32 +33,58 @@ class LineItemTypedDict(TypedDict): r"""The created date of the report item""" modified_at: NotRequired[datetime] r"""The last modified date of the report item""" - + class LineItem(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the report item""" + value: OptionalNullable[float] = UNSET r"""The value of the report item""" + type: OptionalNullable[str] = UNSET r"""The type of the report item""" + parent_item: OptionalNullable[str] = UNSET r"""The UUID of the parent item""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the report item""" + remote_generated_at: OptionalNullable[datetime] = UNSET r"""The date when the report item was generated in the remote system""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info object""" + created_at: Optional[datetime] = None r"""The created date of the report item""" + modified_at: Optional[datetime] = None r"""The last modified date of the report item""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "value", "type", "parent_item", "remote_id", "remote_generated_at", "company_info_id", "created_at", "modified_at"] - nullable_fields = ["name", "value", "type", "parent_item", "remote_id", "remote_generated_at", "company_info_id"] + optional_fields = [ + "name", + "value", + "type", + "parent_item", + "remote_id", + "remote_generated_at", + "company_info_id", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "value", + "type", + "parent_item", + "remote_id", + "remote_generated_at", + "company_info_id", + ] null_default_fields = [] serialized = handler(self) @@ -62,21 +94,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/linkeduserresponse.py b/src/panora_sdk/models/linkeduserresponse.py index af0b514..d3d8b5f 100644 --- a/src/panora_sdk/models/linkeduserresponse.py +++ b/src/panora_sdk/models/linkeduserresponse.py @@ -3,7 +3,7 @@ from __future__ import annotations from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import TypedDict +from typing_extensions import TypedDict class LinkedUserResponseTypedDict(TypedDict): @@ -11,18 +11,26 @@ class LinkedUserResponseTypedDict(TypedDict): linked_user_origin_id: Nullable[str] alias: Nullable[str] id_project: Nullable[str] - + class LinkedUserResponse(BaseModel): id_linked_user: Nullable[str] + linked_user_origin_id: Nullable[str] + alias: Nullable[str] + id_project: Nullable[str] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] - nullable_fields = ["id_linked_user", "linked_user_origin_id", "alias", "id_project"] + nullable_fields = [ + "id_linked_user", + "linked_user_origin_id", + "alias", + "id_project", + ] null_default_fields = [] serialized = handler(self) @@ -32,21 +40,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/listaccountingaccountsop.py b/src/panora_sdk/models/listaccountingaccountsop.py index 8de4a50..7306fc6 100644 --- a/src/panora_sdk/models/listaccountingaccountsop.py +++ b/src/panora_sdk/models/listaccountingaccountsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingaccountoutput import UnifiedAccountingAccountOutput, UnifiedAccountingAccountOutputTypedDict +from .unifiedaccountingaccountoutput import ( + UnifiedAccountingAccountOutput, + UnifiedAccountingAccountOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingAccountsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingAccountsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingAccountsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingAccountsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingAccountOutputTypedDict] - + class ListAccountingAccountsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingAccountOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingAccountsResponseTypedDict(TypedDict): result: ListAccountingAccountsResponseBodyTypedDict - + class ListAccountingAccountsResponse(BaseModel): next: Callable[[], Optional[ListAccountingAccountsResponse]] - + result: ListAccountingAccountsResponseBody - diff --git a/src/panora_sdk/models/listaccountingaddressop.py b/src/panora_sdk/models/listaccountingaddressop.py index c7f4a2d..aee278c 100644 --- a/src/panora_sdk/models/listaccountingaddressop.py +++ b/src/panora_sdk/models/listaccountingaddressop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingaddressoutput import UnifiedAccountingAddressOutput, UnifiedAccountingAddressOutputTypedDict +from .unifiedaccountingaddressoutput import ( + UnifiedAccountingAddressOutput, + UnifiedAccountingAddressOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingAddressRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingAddressRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingAddressRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingAddressResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingAddressOutputTypedDict] - + class ListAccountingAddressResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingAddressOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingAddressResponseTypedDict(TypedDict): result: ListAccountingAddressResponseBodyTypedDict - + class ListAccountingAddressResponse(BaseModel): next: Callable[[], Optional[ListAccountingAddressResponse]] - + result: ListAccountingAddressResponseBody - diff --git a/src/panora_sdk/models/listaccountingattachmentsop.py b/src/panora_sdk/models/listaccountingattachmentsop.py index e889839..0277ba0 100644 --- a/src/panora_sdk/models/listaccountingattachmentsop.py +++ b/src/panora_sdk/models/listaccountingattachmentsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingattachmentoutput import UnifiedAccountingAttachmentOutput, UnifiedAccountingAttachmentOutputTypedDict +from .unifiedaccountingattachmentoutput import ( + UnifiedAccountingAttachmentOutput, + UnifiedAccountingAttachmentOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingAttachmentsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingAttachmentsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingAttachmentsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingAttachmentsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingAttachmentOutputTypedDict] - + class ListAccountingAttachmentsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingAttachmentOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingAttachmentsResponseTypedDict(TypedDict): result: ListAccountingAttachmentsResponseBodyTypedDict - + class ListAccountingAttachmentsResponse(BaseModel): next: Callable[[], Optional[ListAccountingAttachmentsResponse]] - + result: ListAccountingAttachmentsResponseBody - diff --git a/src/panora_sdk/models/listaccountingbalancesheetsop.py b/src/panora_sdk/models/listaccountingbalancesheetsop.py index d3445df..bce6937 100644 --- a/src/panora_sdk/models/listaccountingbalancesheetsop.py +++ b/src/panora_sdk/models/listaccountingbalancesheetsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingbalancesheetoutput import UnifiedAccountingBalancesheetOutput, UnifiedAccountingBalancesheetOutputTypedDict +from .unifiedaccountingbalancesheetoutput import ( + UnifiedAccountingBalancesheetOutput, + UnifiedAccountingBalancesheetOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingBalanceSheetsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingBalanceSheetsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingBalanceSheetsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingBalanceSheetsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingBalancesheetOutputTypedDict] - + class ListAccountingBalanceSheetsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingBalancesheetOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingBalanceSheetsResponseTypedDict(TypedDict): result: ListAccountingBalanceSheetsResponseBodyTypedDict - + class ListAccountingBalanceSheetsResponse(BaseModel): next: Callable[[], Optional[ListAccountingBalanceSheetsResponse]] - + result: ListAccountingBalanceSheetsResponseBody - diff --git a/src/panora_sdk/models/listaccountingcashflowstatementop.py b/src/panora_sdk/models/listaccountingcashflowstatementop.py index d762fc4..f7c6a00 100644 --- a/src/panora_sdk/models/listaccountingcashflowstatementop.py +++ b/src/panora_sdk/models/listaccountingcashflowstatementop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingcashflowstatementoutput import UnifiedAccountingCashflowstatementOutput, UnifiedAccountingCashflowstatementOutputTypedDict +from .unifiedaccountingcashflowstatementoutput import ( + UnifiedAccountingCashflowstatementOutput, + UnifiedAccountingCashflowstatementOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingCashflowStatementRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingCashflowStatementRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingCashflowStatementRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingCashflowStatementResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingCashflowstatementOutputTypedDict] - + class ListAccountingCashflowStatementResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingCashflowstatementOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingCashflowStatementResponseTypedDict(TypedDict): result: ListAccountingCashflowStatementResponseBodyTypedDict - + class ListAccountingCashflowStatementResponse(BaseModel): next: Callable[[], Optional[ListAccountingCashflowStatementResponse]] - + result: ListAccountingCashflowStatementResponseBody - diff --git a/src/panora_sdk/models/listaccountingcompanyinfosop.py b/src/panora_sdk/models/listaccountingcompanyinfosop.py index f1973a0..29a0a31 100644 --- a/src/panora_sdk/models/listaccountingcompanyinfosop.py +++ b/src/panora_sdk/models/listaccountingcompanyinfosop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingcompanyinfooutput import UnifiedAccountingCompanyinfoOutput, UnifiedAccountingCompanyinfoOutputTypedDict +from .unifiedaccountingcompanyinfooutput import ( + UnifiedAccountingCompanyinfoOutput, + UnifiedAccountingCompanyinfoOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingCompanyInfosRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingCompanyInfosRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingCompanyInfosRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingCompanyInfosResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingCompanyinfoOutputTypedDict] - + class ListAccountingCompanyInfosResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingCompanyinfoOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingCompanyInfosResponseTypedDict(TypedDict): result: ListAccountingCompanyInfosResponseBodyTypedDict - + class ListAccountingCompanyInfosResponse(BaseModel): next: Callable[[], Optional[ListAccountingCompanyInfosResponse]] - + result: ListAccountingCompanyInfosResponseBody - diff --git a/src/panora_sdk/models/listaccountingcontactsop.py b/src/panora_sdk/models/listaccountingcontactsop.py index c2e3988..8b82482 100644 --- a/src/panora_sdk/models/listaccountingcontactsop.py +++ b/src/panora_sdk/models/listaccountingcontactsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingcontactoutput import UnifiedAccountingContactOutput, UnifiedAccountingContactOutputTypedDict +from .unifiedaccountingcontactoutput import ( + UnifiedAccountingContactOutput, + UnifiedAccountingContactOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingContactsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingContactsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingContactsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingContactsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingContactOutputTypedDict] - + class ListAccountingContactsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingContactOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingContactsResponseTypedDict(TypedDict): result: ListAccountingContactsResponseBodyTypedDict - + class ListAccountingContactsResponse(BaseModel): next: Callable[[], Optional[ListAccountingContactsResponse]] - + result: ListAccountingContactsResponseBody - diff --git a/src/panora_sdk/models/listaccountingcreditnoteop.py b/src/panora_sdk/models/listaccountingcreditnoteop.py index a110553..d1a0517 100644 --- a/src/panora_sdk/models/listaccountingcreditnoteop.py +++ b/src/panora_sdk/models/listaccountingcreditnoteop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingcreditnoteoutput import UnifiedAccountingCreditnoteOutput, UnifiedAccountingCreditnoteOutputTypedDict +from .unifiedaccountingcreditnoteoutput import ( + UnifiedAccountingCreditnoteOutput, + UnifiedAccountingCreditnoteOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingCreditNoteRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingCreditNoteRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingCreditNoteRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingCreditNoteResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingCreditnoteOutputTypedDict] - + class ListAccountingCreditNoteResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingCreditnoteOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingCreditNoteResponseTypedDict(TypedDict): result: ListAccountingCreditNoteResponseBodyTypedDict - + class ListAccountingCreditNoteResponse(BaseModel): next: Callable[[], Optional[ListAccountingCreditNoteResponse]] - + result: ListAccountingCreditNoteResponseBody - diff --git a/src/panora_sdk/models/listaccountingexpenseop.py b/src/panora_sdk/models/listaccountingexpenseop.py index 1caca86..7e2b500 100644 --- a/src/panora_sdk/models/listaccountingexpenseop.py +++ b/src/panora_sdk/models/listaccountingexpenseop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingexpenseoutput import UnifiedAccountingExpenseOutput, UnifiedAccountingExpenseOutputTypedDict +from .unifiedaccountingexpenseoutput import ( + UnifiedAccountingExpenseOutput, + UnifiedAccountingExpenseOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingExpenseRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingExpenseRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingExpenseRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingExpenseResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingExpenseOutputTypedDict] - + class ListAccountingExpenseResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingExpenseOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingExpenseResponseTypedDict(TypedDict): result: ListAccountingExpenseResponseBodyTypedDict - + class ListAccountingExpenseResponse(BaseModel): next: Callable[[], Optional[ListAccountingExpenseResponse]] - + result: ListAccountingExpenseResponseBody - diff --git a/src/panora_sdk/models/listaccountingincomestatementop.py b/src/panora_sdk/models/listaccountingincomestatementop.py index 68b0c8a..43511fd 100644 --- a/src/panora_sdk/models/listaccountingincomestatementop.py +++ b/src/panora_sdk/models/listaccountingincomestatementop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingincomestatementoutput import UnifiedAccountingIncomestatementOutput, UnifiedAccountingIncomestatementOutputTypedDict +from .unifiedaccountingincomestatementoutput import ( + UnifiedAccountingIncomestatementOutput, + UnifiedAccountingIncomestatementOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingIncomeStatementRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingIncomeStatementRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingIncomeStatementRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingIncomeStatementResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingIncomestatementOutputTypedDict] - + class ListAccountingIncomeStatementResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingIncomestatementOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingIncomeStatementResponseTypedDict(TypedDict): result: ListAccountingIncomeStatementResponseBodyTypedDict - + class ListAccountingIncomeStatementResponse(BaseModel): next: Callable[[], Optional[ListAccountingIncomeStatementResponse]] - + result: ListAccountingIncomeStatementResponseBody - diff --git a/src/panora_sdk/models/listaccountinginvoiceop.py b/src/panora_sdk/models/listaccountinginvoiceop.py index 067f4b7..901f9bf 100644 --- a/src/panora_sdk/models/listaccountinginvoiceop.py +++ b/src/panora_sdk/models/listaccountinginvoiceop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountinginvoiceoutput import UnifiedAccountingInvoiceOutput, UnifiedAccountingInvoiceOutputTypedDict +from .unifiedaccountinginvoiceoutput import ( + UnifiedAccountingInvoiceOutput, + UnifiedAccountingInvoiceOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingInvoiceRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingInvoiceRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingInvoiceRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingInvoiceResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingInvoiceOutputTypedDict] - + class ListAccountingInvoiceResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingInvoiceOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingInvoiceResponseTypedDict(TypedDict): result: ListAccountingInvoiceResponseBodyTypedDict - + class ListAccountingInvoiceResponse(BaseModel): next: Callable[[], Optional[ListAccountingInvoiceResponse]] - + result: ListAccountingInvoiceResponseBody - diff --git a/src/panora_sdk/models/listaccountingitemop.py b/src/panora_sdk/models/listaccountingitemop.py index 8450156..fa1c758 100644 --- a/src/panora_sdk/models/listaccountingitemop.py +++ b/src/panora_sdk/models/listaccountingitemop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingitemoutput import UnifiedAccountingItemOutput, UnifiedAccountingItemOutputTypedDict +from .unifiedaccountingitemoutput import ( + UnifiedAccountingItemOutput, + UnifiedAccountingItemOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingItemRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingItemRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingItemRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingItemResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingItemOutputTypedDict] - + class ListAccountingItemResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingItemOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingItemResponseTypedDict(TypedDict): result: ListAccountingItemResponseBodyTypedDict - + class ListAccountingItemResponse(BaseModel): next: Callable[[], Optional[ListAccountingItemResponse]] - + result: ListAccountingItemResponseBody - diff --git a/src/panora_sdk/models/listaccountingjournalentryop.py b/src/panora_sdk/models/listaccountingjournalentryop.py index 8488d2f..7b4afc4 100644 --- a/src/panora_sdk/models/listaccountingjournalentryop.py +++ b/src/panora_sdk/models/listaccountingjournalentryop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingjournalentryoutput import UnifiedAccountingJournalentryOutput, UnifiedAccountingJournalentryOutputTypedDict +from .unifiedaccountingjournalentryoutput import ( + UnifiedAccountingJournalentryOutput, + UnifiedAccountingJournalentryOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingJournalEntryRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingJournalEntryRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingJournalEntryRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingJournalEntryResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingJournalentryOutputTypedDict] - + class ListAccountingJournalEntryResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingJournalentryOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingJournalEntryResponseTypedDict(TypedDict): result: ListAccountingJournalEntryResponseBodyTypedDict - + class ListAccountingJournalEntryResponse(BaseModel): next: Callable[[], Optional[ListAccountingJournalEntryResponse]] - + result: ListAccountingJournalEntryResponseBody - diff --git a/src/panora_sdk/models/listaccountingpaymentop.py b/src/panora_sdk/models/listaccountingpaymentop.py index 8148525..02dd9d7 100644 --- a/src/panora_sdk/models/listaccountingpaymentop.py +++ b/src/panora_sdk/models/listaccountingpaymentop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingpaymentoutput import UnifiedAccountingPaymentOutput, UnifiedAccountingPaymentOutputTypedDict +from .unifiedaccountingpaymentoutput import ( + UnifiedAccountingPaymentOutput, + UnifiedAccountingPaymentOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingPaymentRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingPaymentRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingPaymentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingPaymentResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingPaymentOutputTypedDict] - + class ListAccountingPaymentResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingPaymentOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingPaymentResponseTypedDict(TypedDict): result: ListAccountingPaymentResponseBodyTypedDict - + class ListAccountingPaymentResponse(BaseModel): next: Callable[[], Optional[ListAccountingPaymentResponse]] - + result: ListAccountingPaymentResponseBody - diff --git a/src/panora_sdk/models/listaccountingphonenumberop.py b/src/panora_sdk/models/listaccountingphonenumberop.py index 8b00e2a..5cef262 100644 --- a/src/panora_sdk/models/listaccountingphonenumberop.py +++ b/src/panora_sdk/models/listaccountingphonenumberop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingphonenumberoutput import UnifiedAccountingPhonenumberOutput, UnifiedAccountingPhonenumberOutputTypedDict +from .unifiedaccountingphonenumberoutput import ( + UnifiedAccountingPhonenumberOutput, + UnifiedAccountingPhonenumberOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingPhonenumberRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingPhonenumberRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingPhonenumberRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingPhonenumberResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingPhonenumberOutputTypedDict] - + class ListAccountingPhonenumberResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingPhonenumberOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingPhonenumberResponseTypedDict(TypedDict): result: ListAccountingPhonenumberResponseBodyTypedDict - + class ListAccountingPhonenumberResponse(BaseModel): next: Callable[[], Optional[ListAccountingPhonenumberResponse]] - + result: ListAccountingPhonenumberResponseBody - diff --git a/src/panora_sdk/models/listaccountingpurchaseorderop.py b/src/panora_sdk/models/listaccountingpurchaseorderop.py index ebc0ea1..4619871 100644 --- a/src/panora_sdk/models/listaccountingpurchaseorderop.py +++ b/src/panora_sdk/models/listaccountingpurchaseorderop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingpurchaseorderoutput import UnifiedAccountingPurchaseorderOutput, UnifiedAccountingPurchaseorderOutputTypedDict +from .unifiedaccountingpurchaseorderoutput import ( + UnifiedAccountingPurchaseorderOutput, + UnifiedAccountingPurchaseorderOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingPurchaseOrderRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingPurchaseOrderRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingPurchaseOrderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingPurchaseOrderResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingPurchaseorderOutputTypedDict] - + class ListAccountingPurchaseOrderResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingPurchaseorderOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingPurchaseOrderResponseTypedDict(TypedDict): result: ListAccountingPurchaseOrderResponseBodyTypedDict - + class ListAccountingPurchaseOrderResponse(BaseModel): next: Callable[[], Optional[ListAccountingPurchaseOrderResponse]] - + result: ListAccountingPurchaseOrderResponseBody - diff --git a/src/panora_sdk/models/listaccountingtaxrateop.py b/src/panora_sdk/models/listaccountingtaxrateop.py index c7a3bce..48bb6a0 100644 --- a/src/panora_sdk/models/listaccountingtaxrateop.py +++ b/src/panora_sdk/models/listaccountingtaxrateop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingtaxrateoutput import UnifiedAccountingTaxrateOutput, UnifiedAccountingTaxrateOutputTypedDict +from .unifiedaccountingtaxrateoutput import ( + UnifiedAccountingTaxrateOutput, + UnifiedAccountingTaxrateOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingTaxRateRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingTaxRateRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingTaxRateRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingTaxRateResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingTaxrateOutputTypedDict] - + class ListAccountingTaxRateResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingTaxrateOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingTaxRateResponseTypedDict(TypedDict): result: ListAccountingTaxRateResponseBodyTypedDict - + class ListAccountingTaxRateResponse(BaseModel): next: Callable[[], Optional[ListAccountingTaxRateResponse]] - + result: ListAccountingTaxRateResponseBody - diff --git a/src/panora_sdk/models/listaccountingtrackingcategorysop.py b/src/panora_sdk/models/listaccountingtrackingcategorysop.py index 4990c23..0176f79 100644 --- a/src/panora_sdk/models/listaccountingtrackingcategorysop.py +++ b/src/panora_sdk/models/listaccountingtrackingcategorysop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingtrackingcategoryoutput import UnifiedAccountingTrackingcategoryOutput, UnifiedAccountingTrackingcategoryOutputTypedDict +from .unifiedaccountingtrackingcategoryoutput import ( + UnifiedAccountingTrackingcategoryOutput, + UnifiedAccountingTrackingcategoryOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingTrackingCategorysRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingTrackingCategorysRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingTrackingCategorysRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingTrackingCategorysResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingTrackingcategoryOutputTypedDict] - + class ListAccountingTrackingCategorysResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingTrackingcategoryOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingTrackingCategorysResponseTypedDict(TypedDict): result: ListAccountingTrackingCategorysResponseBodyTypedDict - + class ListAccountingTrackingCategorysResponse(BaseModel): next: Callable[[], Optional[ListAccountingTrackingCategorysResponse]] - + result: ListAccountingTrackingCategorysResponseBody - diff --git a/src/panora_sdk/models/listaccountingtransactionop.py b/src/panora_sdk/models/listaccountingtransactionop.py index ac9182e..5948566 100644 --- a/src/panora_sdk/models/listaccountingtransactionop.py +++ b/src/panora_sdk/models/listaccountingtransactionop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingtransactionoutput import UnifiedAccountingTransactionOutput, UnifiedAccountingTransactionOutputTypedDict +from .unifiedaccountingtransactionoutput import ( + UnifiedAccountingTransactionOutput, + UnifiedAccountingTransactionOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingTransactionRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingTransactionRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingTransactionRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingTransactionResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingTransactionOutputTypedDict] - + class ListAccountingTransactionResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingTransactionOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingTransactionResponseTypedDict(TypedDict): result: ListAccountingTransactionResponseBodyTypedDict - + class ListAccountingTransactionResponse(BaseModel): next: Callable[[], Optional[ListAccountingTransactionResponse]] - + result: ListAccountingTransactionResponseBody - diff --git a/src/panora_sdk/models/listaccountingvendorcreditop.py b/src/panora_sdk/models/listaccountingvendorcreditop.py index 8e91950..41dd320 100644 --- a/src/panora_sdk/models/listaccountingvendorcreditop.py +++ b/src/panora_sdk/models/listaccountingvendorcreditop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedaccountingvendorcreditoutput import UnifiedAccountingVendorcreditOutput, UnifiedAccountingVendorcreditOutputTypedDict +from .unifiedaccountingvendorcreditoutput import ( + UnifiedAccountingVendorcreditOutput, + UnifiedAccountingVendorcreditOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListAccountingVendorCreditRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListAccountingVendorCreditRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListAccountingVendorCreditRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListAccountingVendorCreditResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedAccountingVendorcreditOutputTypedDict] - + class ListAccountingVendorCreditResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedAccountingVendorcreditOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListAccountingVendorCreditResponseTypedDict(TypedDict): result: ListAccountingVendorCreditResponseBodyTypedDict - + class ListAccountingVendorCreditResponse(BaseModel): next: Callable[[], Optional[ListAccountingVendorCreditResponse]] - + result: ListAccountingVendorCreditResponseBody - diff --git a/src/panora_sdk/models/listatsactivityop.py b/src/panora_sdk/models/listatsactivityop.py deleted file mode 100644 index 0f25a9f..0000000 --- a/src/panora_sdk/models/listatsactivityop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsactivityoutput import UnifiedAtsActivityOutput, UnifiedAtsActivityOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsActivityRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsActivityRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsActivityResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsActivityOutputTypedDict] - - -class ListAtsActivityResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsActivityOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsActivityResponseTypedDict(TypedDict): - result: ListAtsActivityResponseBodyTypedDict - - -class ListAtsActivityResponse(BaseModel): - next: Callable[[], Optional[ListAtsActivityResponse]] - - result: ListAtsActivityResponseBody - diff --git a/src/panora_sdk/models/listatsapplicationop.py b/src/panora_sdk/models/listatsapplicationop.py deleted file mode 100644 index f1dc100..0000000 --- a/src/panora_sdk/models/listatsapplicationop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsapplicationoutput import UnifiedAtsApplicationOutput, UnifiedAtsApplicationOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsApplicationRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsApplicationRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsApplicationResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsApplicationOutputTypedDict] - - -class ListAtsApplicationResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsApplicationOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsApplicationResponseTypedDict(TypedDict): - result: ListAtsApplicationResponseBodyTypedDict - - -class ListAtsApplicationResponse(BaseModel): - next: Callable[[], Optional[ListAtsApplicationResponse]] - - result: ListAtsApplicationResponseBody - diff --git a/src/panora_sdk/models/listatsattachmentop.py b/src/panora_sdk/models/listatsattachmentop.py deleted file mode 100644 index f2642d0..0000000 --- a/src/panora_sdk/models/listatsattachmentop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsattachmentoutput import UnifiedAtsAttachmentOutput, UnifiedAtsAttachmentOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsAttachmentRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsAttachmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsAttachmentResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsAttachmentOutputTypedDict] - - -class ListAtsAttachmentResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsAttachmentOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsAttachmentResponseTypedDict(TypedDict): - result: ListAtsAttachmentResponseBodyTypedDict - - -class ListAtsAttachmentResponse(BaseModel): - next: Callable[[], Optional[ListAtsAttachmentResponse]] - - result: ListAtsAttachmentResponseBody - diff --git a/src/panora_sdk/models/listatscandidateop.py b/src/panora_sdk/models/listatscandidateop.py deleted file mode 100644 index 32ff9bf..0000000 --- a/src/panora_sdk/models/listatscandidateop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatscandidateoutput import UnifiedAtsCandidateOutput, UnifiedAtsCandidateOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsCandidateRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsCandidateRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsCandidateResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsCandidateOutputTypedDict] - - -class ListAtsCandidateResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsCandidateOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsCandidateResponseTypedDict(TypedDict): - result: ListAtsCandidateResponseBodyTypedDict - - -class ListAtsCandidateResponse(BaseModel): - next: Callable[[], Optional[ListAtsCandidateResponse]] - - result: ListAtsCandidateResponseBody - diff --git a/src/panora_sdk/models/listatsdepartmentsop.py b/src/panora_sdk/models/listatsdepartmentsop.py deleted file mode 100644 index 0b7b2a9..0000000 --- a/src/panora_sdk/models/listatsdepartmentsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsdepartmentoutput import UnifiedAtsDepartmentOutput, UnifiedAtsDepartmentOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsDepartmentsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsDepartmentsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsDepartmentsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsDepartmentOutputTypedDict] - - -class ListAtsDepartmentsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsDepartmentOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsDepartmentsResponseTypedDict(TypedDict): - result: ListAtsDepartmentsResponseBodyTypedDict - - -class ListAtsDepartmentsResponse(BaseModel): - next: Callable[[], Optional[ListAtsDepartmentsResponse]] - - result: ListAtsDepartmentsResponseBody - diff --git a/src/panora_sdk/models/listatseeocsop.py b/src/panora_sdk/models/listatseeocsop.py deleted file mode 100644 index 900e1ae..0000000 --- a/src/panora_sdk/models/listatseeocsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatseeocsoutput import UnifiedAtsEeocsOutput, UnifiedAtsEeocsOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsEeocsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsEeocsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsEeocsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsEeocsOutputTypedDict] - - -class ListAtsEeocsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsEeocsOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsEeocsResponseTypedDict(TypedDict): - result: ListAtsEeocsResponseBodyTypedDict - - -class ListAtsEeocsResponse(BaseModel): - next: Callable[[], Optional[ListAtsEeocsResponse]] - - result: ListAtsEeocsResponseBody - diff --git a/src/panora_sdk/models/listatsinterviewop.py b/src/panora_sdk/models/listatsinterviewop.py deleted file mode 100644 index d79907d..0000000 --- a/src/panora_sdk/models/listatsinterviewop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsinterviewoutput import UnifiedAtsInterviewOutput, UnifiedAtsInterviewOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsInterviewRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsInterviewRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsInterviewResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsInterviewOutputTypedDict] - - -class ListAtsInterviewResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsInterviewOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsInterviewResponseTypedDict(TypedDict): - result: ListAtsInterviewResponseBodyTypedDict - - -class ListAtsInterviewResponse(BaseModel): - next: Callable[[], Optional[ListAtsInterviewResponse]] - - result: ListAtsInterviewResponseBody - diff --git a/src/panora_sdk/models/listatsjobinterviewstageop.py b/src/panora_sdk/models/listatsjobinterviewstageop.py deleted file mode 100644 index 088995c..0000000 --- a/src/panora_sdk/models/listatsjobinterviewstageop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsjobinterviewstageoutput import UnifiedAtsJobinterviewstageOutput, UnifiedAtsJobinterviewstageOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsJobInterviewStageRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsJobInterviewStageRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsJobInterviewStageResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsJobinterviewstageOutputTypedDict] - - -class ListAtsJobInterviewStageResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsJobinterviewstageOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsJobInterviewStageResponseTypedDict(TypedDict): - result: ListAtsJobInterviewStageResponseBodyTypedDict - - -class ListAtsJobInterviewStageResponse(BaseModel): - next: Callable[[], Optional[ListAtsJobInterviewStageResponse]] - - result: ListAtsJobInterviewStageResponseBody - diff --git a/src/panora_sdk/models/listatsjobop.py b/src/panora_sdk/models/listatsjobop.py deleted file mode 100644 index 8d8cace..0000000 --- a/src/panora_sdk/models/listatsjobop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsjoboutput import UnifiedAtsJobOutput, UnifiedAtsJobOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsJobRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsJobRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsJobResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsJobOutputTypedDict] - - -class ListAtsJobResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsJobOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsJobResponseTypedDict(TypedDict): - result: ListAtsJobResponseBodyTypedDict - - -class ListAtsJobResponse(BaseModel): - next: Callable[[], Optional[ListAtsJobResponse]] - - result: ListAtsJobResponseBody - diff --git a/src/panora_sdk/models/listatsofferop.py b/src/panora_sdk/models/listatsofferop.py deleted file mode 100644 index fc03c2f..0000000 --- a/src/panora_sdk/models/listatsofferop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsofferoutput import UnifiedAtsOfferOutput, UnifiedAtsOfferOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsOfferRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsOfferRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsOfferResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsOfferOutputTypedDict] - - -class ListAtsOfferResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsOfferOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsOfferResponseTypedDict(TypedDict): - result: ListAtsOfferResponseBodyTypedDict - - -class ListAtsOfferResponse(BaseModel): - next: Callable[[], Optional[ListAtsOfferResponse]] - - result: ListAtsOfferResponseBody - diff --git a/src/panora_sdk/models/listatsofficeop.py b/src/panora_sdk/models/listatsofficeop.py deleted file mode 100644 index 985dc8c..0000000 --- a/src/panora_sdk/models/listatsofficeop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsofficeoutput import UnifiedAtsOfficeOutput, UnifiedAtsOfficeOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsOfficeRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsOfficeRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsOfficeResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsOfficeOutputTypedDict] - - -class ListAtsOfficeResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsOfficeOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsOfficeResponseTypedDict(TypedDict): - result: ListAtsOfficeResponseBodyTypedDict - - -class ListAtsOfficeResponse(BaseModel): - next: Callable[[], Optional[ListAtsOfficeResponse]] - - result: ListAtsOfficeResponseBody - diff --git a/src/panora_sdk/models/listatsrejectreasonsop.py b/src/panora_sdk/models/listatsrejectreasonsop.py deleted file mode 100644 index fba8beb..0000000 --- a/src/panora_sdk/models/listatsrejectreasonsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsrejectreasonoutput import UnifiedAtsRejectreasonOutput, UnifiedAtsRejectreasonOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsRejectReasonsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsRejectReasonsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsRejectReasonsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsRejectreasonOutputTypedDict] - - -class ListAtsRejectReasonsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsRejectreasonOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsRejectReasonsResponseTypedDict(TypedDict): - result: ListAtsRejectReasonsResponseBodyTypedDict - - -class ListAtsRejectReasonsResponse(BaseModel): - next: Callable[[], Optional[ListAtsRejectReasonsResponse]] - - result: ListAtsRejectReasonsResponseBody - diff --git a/src/panora_sdk/models/listatsscorecardop.py b/src/panora_sdk/models/listatsscorecardop.py deleted file mode 100644 index 924f432..0000000 --- a/src/panora_sdk/models/listatsscorecardop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsscorecardoutput import UnifiedAtsScorecardOutput, UnifiedAtsScorecardOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsScorecardRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsScorecardRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsScorecardResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsScorecardOutputTypedDict] - - -class ListAtsScorecardResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsScorecardOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsScorecardResponseTypedDict(TypedDict): - result: ListAtsScorecardResponseBodyTypedDict - - -class ListAtsScorecardResponse(BaseModel): - next: Callable[[], Optional[ListAtsScorecardResponse]] - - result: ListAtsScorecardResponseBody - diff --git a/src/panora_sdk/models/listatstagsop.py b/src/panora_sdk/models/listatstagsop.py deleted file mode 100644 index 9a78c52..0000000 --- a/src/panora_sdk/models/listatstagsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatstagoutput import UnifiedAtsTagOutput, UnifiedAtsTagOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsTagsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsTagsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsTagsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsTagOutputTypedDict] - - -class ListAtsTagsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsTagOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsTagsResponseTypedDict(TypedDict): - result: ListAtsTagsResponseBodyTypedDict - - -class ListAtsTagsResponse(BaseModel): - next: Callable[[], Optional[ListAtsTagsResponse]] - - result: ListAtsTagsResponseBody - diff --git a/src/panora_sdk/models/listatsusersop.py b/src/panora_sdk/models/listatsusersop.py deleted file mode 100644 index b685b0d..0000000 --- a/src/panora_sdk/models/listatsusersop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedatsuseroutput import UnifiedAtsUserOutput, UnifiedAtsUserOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListAtsUsersRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListAtsUsersRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListAtsUsersResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsUserOutputTypedDict] - - -class ListAtsUsersResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedAtsUserOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListAtsUsersResponseTypedDict(TypedDict): - result: ListAtsUsersResponseBodyTypedDict - - -class ListAtsUsersResponse(BaseModel): - next: Callable[[], Optional[ListAtsUsersResponse]] - - result: ListAtsUsersResponseBody - diff --git a/src/panora_sdk/models/listcrmcompanyop.py b/src/panora_sdk/models/listcrmcompanyop.py index 0e57ea2..0227b79 100644 --- a/src/panora_sdk/models/listcrmcompanyop.py +++ b/src/panora_sdk/models/listcrmcompanyop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedcrmcompanyoutput import UnifiedCrmCompanyOutput, UnifiedCrmCompanyOutputTypedDict +from .unifiedcrmcompanyoutput import ( + UnifiedCrmCompanyOutput, + UnifiedCrmCompanyOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmCompanyRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListCrmCompanyRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmCompanyRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmCompanyResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmCompanyOutputTypedDict] - + class ListCrmCompanyResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmCompanyOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmCompanyResponseTypedDict(TypedDict): result: ListCrmCompanyResponseBodyTypedDict - + class ListCrmCompanyResponse(BaseModel): next: Callable[[], Optional[ListCrmCompanyResponse]] - + result: ListCrmCompanyResponseBody - diff --git a/src/panora_sdk/models/listcrmcontactsop.py b/src/panora_sdk/models/listcrmcontactsop.py index 866b94c..be5303e 100644 --- a/src/panora_sdk/models/listcrmcontactsop.py +++ b/src/panora_sdk/models/listcrmcontactsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedcrmcontactoutput import UnifiedCrmContactOutput, UnifiedCrmContactOutputTypedDict +from .unifiedcrmcontactoutput import ( + UnifiedCrmContactOutput, + UnifiedCrmContactOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmContactsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListCrmContactsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmContactsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmContactsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmContactOutputTypedDict] - + class ListCrmContactsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmContactOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmContactsResponseTypedDict(TypedDict): result: ListCrmContactsResponseBodyTypedDict - + class ListCrmContactsResponse(BaseModel): next: Callable[[], Optional[ListCrmContactsResponse]] - + result: ListCrmContactsResponseBody - diff --git a/src/panora_sdk/models/listcrmdealsop.py b/src/panora_sdk/models/listcrmdealsop.py index 91c2d93..b9cbad0 100644 --- a/src/panora_sdk/models/listcrmdealsop.py +++ b/src/panora_sdk/models/listcrmdealsop.py @@ -6,8 +6,8 @@ from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmDealsRequestTypedDict(TypedDict): @@ -19,30 +19,48 @@ class ListCrmDealsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmDealsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmDealsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmDealOutputTypedDict] - + class ListCrmDealsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmDealOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +74,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmDealsResponseTypedDict(TypedDict): result: ListCrmDealsResponseBodyTypedDict - + class ListCrmDealsResponse(BaseModel): next: Callable[[], Optional[ListCrmDealsResponse]] - + result: ListCrmDealsResponseBody - diff --git a/src/panora_sdk/models/listcrmengagementsop.py b/src/panora_sdk/models/listcrmengagementsop.py index fd1e4ec..3a8979b 100644 --- a/src/panora_sdk/models/listcrmengagementsop.py +++ b/src/panora_sdk/models/listcrmengagementsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedcrmengagementoutput import UnifiedCrmEngagementOutput, UnifiedCrmEngagementOutputTypedDict +from .unifiedcrmengagementoutput import ( + UnifiedCrmEngagementOutput, + UnifiedCrmEngagementOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmEngagementsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListCrmEngagementsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmEngagementsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmEngagementsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmEngagementOutputTypedDict] - + class ListCrmEngagementsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmEngagementOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmEngagementsResponseTypedDict(TypedDict): result: ListCrmEngagementsResponseBodyTypedDict - + class ListCrmEngagementsResponse(BaseModel): next: Callable[[], Optional[ListCrmEngagementsResponse]] - + result: ListCrmEngagementsResponseBody - diff --git a/src/panora_sdk/models/listcrmnoteop.py b/src/panora_sdk/models/listcrmnoteop.py index ba95734..fff7ad5 100644 --- a/src/panora_sdk/models/listcrmnoteop.py +++ b/src/panora_sdk/models/listcrmnoteop.py @@ -6,8 +6,8 @@ from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmNoteRequestTypedDict(TypedDict): @@ -19,30 +19,48 @@ class ListCrmNoteRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmNoteRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmNoteResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmNoteOutputTypedDict] - + class ListCrmNoteResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmNoteOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +74,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmNoteResponseTypedDict(TypedDict): result: ListCrmNoteResponseBodyTypedDict - + class ListCrmNoteResponse(BaseModel): next: Callable[[], Optional[ListCrmNoteResponse]] - + result: ListCrmNoteResponseBody - diff --git a/src/panora_sdk/models/listcrmstagesop.py b/src/panora_sdk/models/listcrmstagesop.py index 2f8c2b5..845c6bb 100644 --- a/src/panora_sdk/models/listcrmstagesop.py +++ b/src/panora_sdk/models/listcrmstagesop.py @@ -6,8 +6,8 @@ from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmStagesRequestTypedDict(TypedDict): @@ -19,30 +19,48 @@ class ListCrmStagesRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmStagesRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmStagesResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmStageOutputTypedDict] - + class ListCrmStagesResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmStageOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +74,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmStagesResponseTypedDict(TypedDict): result: ListCrmStagesResponseBodyTypedDict - + class ListCrmStagesResponse(BaseModel): next: Callable[[], Optional[ListCrmStagesResponse]] - + result: ListCrmStagesResponseBody - diff --git a/src/panora_sdk/models/listcrmtaskop.py b/src/panora_sdk/models/listcrmtaskop.py index 6accfbd..33dfafc 100644 --- a/src/panora_sdk/models/listcrmtaskop.py +++ b/src/panora_sdk/models/listcrmtaskop.py @@ -6,8 +6,8 @@ from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmTaskRequestTypedDict(TypedDict): @@ -19,30 +19,48 @@ class ListCrmTaskRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmTaskRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmTaskResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmTaskOutputTypedDict] - + class ListCrmTaskResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmTaskOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +74,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmTaskResponseTypedDict(TypedDict): result: ListCrmTaskResponseBodyTypedDict - + class ListCrmTaskResponse(BaseModel): next: Callable[[], Optional[ListCrmTaskResponse]] - + result: ListCrmTaskResponseBody - diff --git a/src/panora_sdk/models/listcrmusersop.py b/src/panora_sdk/models/listcrmusersop.py index 17501bf..47ef3d0 100644 --- a/src/panora_sdk/models/listcrmusersop.py +++ b/src/panora_sdk/models/listcrmusersop.py @@ -6,8 +6,8 @@ from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListCrmUsersRequestTypedDict(TypedDict): @@ -19,30 +19,48 @@ class ListCrmUsersRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListCrmUsersRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListCrmUsersResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedCrmUserOutputTypedDict] - + class ListCrmUsersResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedCrmUserOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +74,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListCrmUsersResponseTypedDict(TypedDict): result: ListCrmUsersResponseBodyTypedDict - + class ListCrmUsersResponse(BaseModel): next: Callable[[], Optional[ListCrmUsersResponse]] - + result: ListCrmUsersResponseBody - diff --git a/src/panora_sdk/models/listecommercecustomersop.py b/src/panora_sdk/models/listecommercecustomersop.py index b9724cc..f9c2705 100644 --- a/src/panora_sdk/models/listecommercecustomersop.py +++ b/src/panora_sdk/models/listecommercecustomersop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedecommercecustomeroutput import UnifiedEcommerceCustomerOutput, UnifiedEcommerceCustomerOutputTypedDict +from .unifiedecommercecustomeroutput import ( + UnifiedEcommerceCustomerOutput, + UnifiedEcommerceCustomerOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListEcommerceCustomersRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListEcommerceCustomersRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListEcommerceCustomersRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListEcommerceCustomersResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedEcommerceCustomerOutputTypedDict] - + class ListEcommerceCustomersResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedEcommerceCustomerOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListEcommerceCustomersResponseTypedDict(TypedDict): result: ListEcommerceCustomersResponseBodyTypedDict - + class ListEcommerceCustomersResponse(BaseModel): next: Callable[[], Optional[ListEcommerceCustomersResponse]] - + result: ListEcommerceCustomersResponseBody - diff --git a/src/panora_sdk/models/listecommercefulfillmentsop.py b/src/panora_sdk/models/listecommercefulfillmentsop.py index ee4fb1a..68749f1 100644 --- a/src/panora_sdk/models/listecommercefulfillmentsop.py +++ b/src/panora_sdk/models/listecommercefulfillmentsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedecommercefulfillmentoutput import UnifiedEcommerceFulfillmentOutput, UnifiedEcommerceFulfillmentOutputTypedDict +from .unifiedecommercefulfillmentoutput import ( + UnifiedEcommerceFulfillmentOutput, + UnifiedEcommerceFulfillmentOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListEcommerceFulfillmentsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListEcommerceFulfillmentsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListEcommerceFulfillmentsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListEcommerceFulfillmentsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedEcommerceFulfillmentOutputTypedDict] - + class ListEcommerceFulfillmentsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedEcommerceFulfillmentOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListEcommerceFulfillmentsResponseTypedDict(TypedDict): result: ListEcommerceFulfillmentsResponseBodyTypedDict - + class ListEcommerceFulfillmentsResponse(BaseModel): next: Callable[[], Optional[ListEcommerceFulfillmentsResponse]] - + result: ListEcommerceFulfillmentsResponseBody - diff --git a/src/panora_sdk/models/listecommerceordersop.py b/src/panora_sdk/models/listecommerceordersop.py index 3b2b7f8..5efb1f9 100644 --- a/src/panora_sdk/models/listecommerceordersop.py +++ b/src/panora_sdk/models/listecommerceordersop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedecommerceorderoutput import UnifiedEcommerceOrderOutput, UnifiedEcommerceOrderOutputTypedDict +from .unifiedecommerceorderoutput import ( + UnifiedEcommerceOrderOutput, + UnifiedEcommerceOrderOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListEcommerceOrdersRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListEcommerceOrdersRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListEcommerceOrdersRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListEcommerceOrdersResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedEcommerceOrderOutputTypedDict] - + class ListEcommerceOrdersResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedEcommerceOrderOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListEcommerceOrdersResponseTypedDict(TypedDict): result: ListEcommerceOrdersResponseBodyTypedDict - + class ListEcommerceOrdersResponse(BaseModel): next: Callable[[], Optional[ListEcommerceOrdersResponse]] - + result: ListEcommerceOrdersResponseBody - diff --git a/src/panora_sdk/models/listecommerceproductsop.py b/src/panora_sdk/models/listecommerceproductsop.py index 2fd9fbe..3e9b090 100644 --- a/src/panora_sdk/models/listecommerceproductsop.py +++ b/src/panora_sdk/models/listecommerceproductsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedecommerceproductoutput import UnifiedEcommerceProductOutput, UnifiedEcommerceProductOutputTypedDict +from .unifiedecommerceproductoutput import ( + UnifiedEcommerceProductOutput, + UnifiedEcommerceProductOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListEcommerceProductsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListEcommerceProductsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListEcommerceProductsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListEcommerceProductsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedEcommerceProductOutputTypedDict] - + class ListEcommerceProductsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedEcommerceProductOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListEcommerceProductsResponseTypedDict(TypedDict): result: ListEcommerceProductsResponseBodyTypedDict - + class ListEcommerceProductsResponse(BaseModel): next: Callable[[], Optional[ListEcommerceProductsResponse]] - + result: ListEcommerceProductsResponseBody - diff --git a/src/panora_sdk/models/listfilestoragefileop.py b/src/panora_sdk/models/listfilestoragefileop.py index 8e343af..0e0d741 100644 --- a/src/panora_sdk/models/listfilestoragefileop.py +++ b/src/panora_sdk/models/listfilestoragefileop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedfilestoragefileoutput import UnifiedFilestorageFileOutput, UnifiedFilestorageFileOutputTypedDict +from .unifiedfilestoragefileoutput import ( + UnifiedFilestorageFileOutput, + UnifiedFilestorageFileOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListFilestorageFileRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListFilestorageFileRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListFilestorageFileRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListFilestorageFileResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedFilestorageFileOutputTypedDict] - + class ListFilestorageFileResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedFilestorageFileOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListFilestorageFileResponseTypedDict(TypedDict): result: ListFilestorageFileResponseBodyTypedDict - + class ListFilestorageFileResponse(BaseModel): next: Callable[[], Optional[ListFilestorageFileResponse]] - + result: ListFilestorageFileResponseBody - diff --git a/src/panora_sdk/models/listfilestoragefolderop.py b/src/panora_sdk/models/listfilestoragefolderop.py index aec5416..a8fca9c 100644 --- a/src/panora_sdk/models/listfilestoragefolderop.py +++ b/src/panora_sdk/models/listfilestoragefolderop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedfilestoragefolderoutput import UnifiedFilestorageFolderOutput, UnifiedFilestorageFolderOutputTypedDict +from .unifiedfilestoragefolderoutput import ( + UnifiedFilestorageFolderOutput, + UnifiedFilestorageFolderOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListFilestorageFolderRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListFilestorageFolderRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListFilestorageFolderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListFilestorageFolderResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedFilestorageFolderOutputTypedDict] - + class ListFilestorageFolderResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedFilestorageFolderOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListFilestorageFolderResponseTypedDict(TypedDict): result: ListFilestorageFolderResponseBodyTypedDict - + class ListFilestorageFolderResponse(BaseModel): next: Callable[[], Optional[ListFilestorageFolderResponse]] - + result: ListFilestorageFolderResponseBody - diff --git a/src/panora_sdk/models/listfilestoragegroupop.py b/src/panora_sdk/models/listfilestoragegroupop.py index dab225d..81940c6 100644 --- a/src/panora_sdk/models/listfilestoragegroupop.py +++ b/src/panora_sdk/models/listfilestoragegroupop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedfilestoragegroupoutput import UnifiedFilestorageGroupOutput, UnifiedFilestorageGroupOutputTypedDict +from .unifiedfilestoragegroupoutput import ( + UnifiedFilestorageGroupOutput, + UnifiedFilestorageGroupOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListFilestorageGroupRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListFilestorageGroupRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListFilestorageGroupRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListFilestorageGroupResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedFilestorageGroupOutputTypedDict] - + class ListFilestorageGroupResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedFilestorageGroupOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListFilestorageGroupResponseTypedDict(TypedDict): result: ListFilestorageGroupResponseBodyTypedDict - + class ListFilestorageGroupResponse(BaseModel): next: Callable[[], Optional[ListFilestorageGroupResponse]] - + result: ListFilestorageGroupResponseBody - diff --git a/src/panora_sdk/models/listfilestorageusersop.py b/src/panora_sdk/models/listfilestorageusersop.py index 8cd2066..22a0391 100644 --- a/src/panora_sdk/models/listfilestorageusersop.py +++ b/src/panora_sdk/models/listfilestorageusersop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedfilestorageuseroutput import UnifiedFilestorageUserOutput, UnifiedFilestorageUserOutputTypedDict +from .unifiedfilestorageuseroutput import ( + UnifiedFilestorageUserOutput, + UnifiedFilestorageUserOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListFilestorageUsersRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListFilestorageUsersRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListFilestorageUsersRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListFilestorageUsersResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedFilestorageUserOutputTypedDict] - + class ListFilestorageUsersResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedFilestorageUserOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListFilestorageUsersResponseTypedDict(TypedDict): result: ListFilestorageUsersResponseBodyTypedDict - + class ListFilestorageUsersResponse(BaseModel): next: Callable[[], Optional[ListFilestorageUsersResponse]] - + result: ListFilestorageUsersResponseBody - diff --git a/src/panora_sdk/models/listhrisbankinfoop.py b/src/panora_sdk/models/listhrisbankinfoop.py deleted file mode 100644 index 5dbb5ff..0000000 --- a/src/panora_sdk/models/listhrisbankinfoop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisbankinfooutput import UnifiedHrisBankinfoOutput, UnifiedHrisBankinfoOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisBankInfoRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisBankInfoRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisBankInfoResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisBankinfoOutputTypedDict] - - -class ListHrisBankInfoResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisBankinfoOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisBankInfoResponseTypedDict(TypedDict): - result: ListHrisBankInfoResponseBodyTypedDict - - -class ListHrisBankInfoResponse(BaseModel): - next: Callable[[], Optional[ListHrisBankInfoResponse]] - - result: ListHrisBankInfoResponseBody - diff --git a/src/panora_sdk/models/listhrisbenefitsop.py b/src/panora_sdk/models/listhrisbenefitsop.py deleted file mode 100644 index f7e0dab..0000000 --- a/src/panora_sdk/models/listhrisbenefitsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisbenefitoutput import UnifiedHrisBenefitOutput, UnifiedHrisBenefitOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisBenefitsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisBenefitsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisBenefitsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisBenefitOutputTypedDict] - - -class ListHrisBenefitsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisBenefitOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisBenefitsResponseTypedDict(TypedDict): - result: ListHrisBenefitsResponseBodyTypedDict - - -class ListHrisBenefitsResponse(BaseModel): - next: Callable[[], Optional[ListHrisBenefitsResponse]] - - result: ListHrisBenefitsResponseBody - diff --git a/src/panora_sdk/models/listhriscompaniesop.py b/src/panora_sdk/models/listhriscompaniesop.py deleted file mode 100644 index 0c724e4..0000000 --- a/src/panora_sdk/models/listhriscompaniesop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhriscompanyoutput import UnifiedHrisCompanyOutput, UnifiedHrisCompanyOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisCompaniesRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisCompaniesRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisCompaniesResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisCompanyOutputTypedDict] - - -class ListHrisCompaniesResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisCompanyOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisCompaniesResponseTypedDict(TypedDict): - result: ListHrisCompaniesResponseBodyTypedDict - - -class ListHrisCompaniesResponse(BaseModel): - next: Callable[[], Optional[ListHrisCompaniesResponse]] - - result: ListHrisCompaniesResponseBody - diff --git a/src/panora_sdk/models/listhrisdependentsop.py b/src/panora_sdk/models/listhrisdependentsop.py deleted file mode 100644 index 53111cf..0000000 --- a/src/panora_sdk/models/listhrisdependentsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisdependentoutput import UnifiedHrisDependentOutput, UnifiedHrisDependentOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisDependentsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisDependentsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisDependentsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisDependentOutputTypedDict] - - -class ListHrisDependentsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisDependentOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisDependentsResponseTypedDict(TypedDict): - result: ListHrisDependentsResponseBodyTypedDict - - -class ListHrisDependentsResponse(BaseModel): - next: Callable[[], Optional[ListHrisDependentsResponse]] - - result: ListHrisDependentsResponseBody - diff --git a/src/panora_sdk/models/listhrisemployeepayrollrunop.py b/src/panora_sdk/models/listhrisemployeepayrollrunop.py deleted file mode 100644 index cf37427..0000000 --- a/src/panora_sdk/models/listhrisemployeepayrollrunop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisemployeepayrollrunoutput import UnifiedHrisEmployeepayrollrunOutput, UnifiedHrisEmployeepayrollrunOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisEmployeePayrollRunRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmployeePayrollRunRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmployeePayrollRunResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmployeepayrollrunOutputTypedDict] - - -class ListHrisEmployeePayrollRunResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmployeepayrollrunOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisEmployeePayrollRunResponseTypedDict(TypedDict): - result: ListHrisEmployeePayrollRunResponseBodyTypedDict - - -class ListHrisEmployeePayrollRunResponse(BaseModel): - next: Callable[[], Optional[ListHrisEmployeePayrollRunResponse]] - - result: ListHrisEmployeePayrollRunResponseBody - diff --git a/src/panora_sdk/models/listhrisemployeesop.py b/src/panora_sdk/models/listhrisemployeesop.py deleted file mode 100644 index c38adf8..0000000 --- a/src/panora_sdk/models/listhrisemployeesop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisemployeeoutput import UnifiedHrisEmployeeOutput, UnifiedHrisEmployeeOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisEmployeesRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmployeesRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmployeesResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmployeeOutputTypedDict] - - -class ListHrisEmployeesResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmployeeOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisEmployeesResponseTypedDict(TypedDict): - result: ListHrisEmployeesResponseBodyTypedDict - - -class ListHrisEmployeesResponse(BaseModel): - next: Callable[[], Optional[ListHrisEmployeesResponse]] - - result: ListHrisEmployeesResponseBody - diff --git a/src/panora_sdk/models/listhrisemployerbenefitsop.py b/src/panora_sdk/models/listhrisemployerbenefitsop.py deleted file mode 100644 index a21748c..0000000 --- a/src/panora_sdk/models/listhrisemployerbenefitsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisemployerbenefitoutput import UnifiedHrisEmployerbenefitOutput, UnifiedHrisEmployerbenefitOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisEmployerBenefitsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmployerBenefitsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmployerBenefitsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmployerbenefitOutputTypedDict] - - -class ListHrisEmployerBenefitsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmployerbenefitOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisEmployerBenefitsResponseTypedDict(TypedDict): - result: ListHrisEmployerBenefitsResponseBodyTypedDict - - -class ListHrisEmployerBenefitsResponse(BaseModel): - next: Callable[[], Optional[ListHrisEmployerBenefitsResponse]] - - result: ListHrisEmployerBenefitsResponseBody - diff --git a/src/panora_sdk/models/listhrisemploymentsop.py b/src/panora_sdk/models/listhrisemploymentsop.py deleted file mode 100644 index ed2bb89..0000000 --- a/src/panora_sdk/models/listhrisemploymentsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisemploymentoutput import UnifiedHrisEmploymentOutput, UnifiedHrisEmploymentOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisEmploymentsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmploymentsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisEmploymentsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmploymentOutputTypedDict] - - -class ListHrisEmploymentsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisEmploymentOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisEmploymentsResponseTypedDict(TypedDict): - result: ListHrisEmploymentsResponseBodyTypedDict - - -class ListHrisEmploymentsResponse(BaseModel): - next: Callable[[], Optional[ListHrisEmploymentsResponse]] - - result: ListHrisEmploymentsResponseBody - diff --git a/src/panora_sdk/models/listhrisgroupsop.py b/src/panora_sdk/models/listhrisgroupsop.py deleted file mode 100644 index 4b2bd75..0000000 --- a/src/panora_sdk/models/listhrisgroupsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrisgroupoutput import UnifiedHrisGroupOutput, UnifiedHrisGroupOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisGroupsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisGroupsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisGroupsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisGroupOutputTypedDict] - - -class ListHrisGroupsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisGroupOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisGroupsResponseTypedDict(TypedDict): - result: ListHrisGroupsResponseBodyTypedDict - - -class ListHrisGroupsResponse(BaseModel): - next: Callable[[], Optional[ListHrisGroupsResponse]] - - result: ListHrisGroupsResponseBody - diff --git a/src/panora_sdk/models/listhrislocationsop.py b/src/panora_sdk/models/listhrislocationsop.py deleted file mode 100644 index 011eedd..0000000 --- a/src/panora_sdk/models/listhrislocationsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrislocationoutput import UnifiedHrisLocationOutput, UnifiedHrisLocationOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisLocationsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisLocationsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisLocationsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisLocationOutputTypedDict] - - -class ListHrisLocationsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisLocationOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisLocationsResponseTypedDict(TypedDict): - result: ListHrisLocationsResponseBodyTypedDict - - -class ListHrisLocationsResponse(BaseModel): - next: Callable[[], Optional[ListHrisLocationsResponse]] - - result: ListHrisLocationsResponseBody - diff --git a/src/panora_sdk/models/listhrispaygroupsop.py b/src/panora_sdk/models/listhrispaygroupsop.py deleted file mode 100644 index 7c85862..0000000 --- a/src/panora_sdk/models/listhrispaygroupsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrispaygroupoutput import UnifiedHrisPaygroupOutput, UnifiedHrisPaygroupOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisPaygroupsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisPaygroupsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisPaygroupsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisPaygroupOutputTypedDict] - - -class ListHrisPaygroupsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisPaygroupOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisPaygroupsResponseTypedDict(TypedDict): - result: ListHrisPaygroupsResponseBodyTypedDict - - -class ListHrisPaygroupsResponse(BaseModel): - next: Callable[[], Optional[ListHrisPaygroupsResponse]] - - result: ListHrisPaygroupsResponseBody - diff --git a/src/panora_sdk/models/listhrispayrollrunsop.py b/src/panora_sdk/models/listhrispayrollrunsop.py deleted file mode 100644 index 7c5ab0b..0000000 --- a/src/panora_sdk/models/listhrispayrollrunsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhrispayrollrunoutput import UnifiedHrisPayrollrunOutput, UnifiedHrisPayrollrunOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisPayrollRunsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisPayrollRunsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisPayrollRunsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisPayrollrunOutputTypedDict] - - -class ListHrisPayrollRunsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisPayrollrunOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisPayrollRunsResponseTypedDict(TypedDict): - result: ListHrisPayrollRunsResponseBodyTypedDict - - -class ListHrisPayrollRunsResponse(BaseModel): - next: Callable[[], Optional[ListHrisPayrollRunsResponse]] - - result: ListHrisPayrollRunsResponseBody - diff --git a/src/panora_sdk/models/listhristimeoffbalancesop.py b/src/panora_sdk/models/listhristimeoffbalancesop.py deleted file mode 100644 index 4d8d74d..0000000 --- a/src/panora_sdk/models/listhristimeoffbalancesop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhristimeoffbalanceoutput import UnifiedHrisTimeoffbalanceOutput, UnifiedHrisTimeoffbalanceOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisTimeoffbalancesRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisTimeoffbalancesRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisTimeoffbalancesResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisTimeoffbalanceOutputTypedDict] - - -class ListHrisTimeoffbalancesResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisTimeoffbalanceOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisTimeoffbalancesResponseTypedDict(TypedDict): - result: ListHrisTimeoffbalancesResponseBodyTypedDict - - -class ListHrisTimeoffbalancesResponse(BaseModel): - next: Callable[[], Optional[ListHrisTimeoffbalancesResponse]] - - result: ListHrisTimeoffbalancesResponseBody - diff --git a/src/panora_sdk/models/listhristimeoffsop.py b/src/panora_sdk/models/listhristimeoffsop.py deleted file mode 100644 index f83a60a..0000000 --- a/src/panora_sdk/models/listhristimeoffsop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhristimeoffoutput import UnifiedHrisTimeoffOutput, UnifiedHrisTimeoffOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisTimeoffsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisTimeoffsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisTimeoffsResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisTimeoffOutputTypedDict] - - -class ListHrisTimeoffsResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisTimeoffOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisTimeoffsResponseTypedDict(TypedDict): - result: ListHrisTimeoffsResponseBodyTypedDict - - -class ListHrisTimeoffsResponse(BaseModel): - next: Callable[[], Optional[ListHrisTimeoffsResponse]] - - result: ListHrisTimeoffsResponseBody - diff --git a/src/panora_sdk/models/listhristimesheetentriesop.py b/src/panora_sdk/models/listhristimesheetentriesop.py deleted file mode 100644 index fdbd43c..0000000 --- a/src/panora_sdk/models/listhristimesheetentriesop.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .unifiedhristimesheetentryoutput import UnifiedHrisTimesheetEntryOutput, UnifiedHrisTimesheetEntryOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata -import pydantic -from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class ListHrisTimesheetentriesRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original software.""" - limit: NotRequired[float] - r"""Set to get the number of records.""" - cursor: NotRequired[str] - r"""Set to get the number of records after this cursor.""" - - -class ListHrisTimesheetentriesRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 - r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to get the number of records after this cursor.""" - - -class ListHrisTimesheetentriesResponseBodyTypedDict(TypedDict): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisTimesheetEntryOutputTypedDict] - - -class ListHrisTimesheetentriesResponseBody(BaseModel): - prev_cursor: Nullable[str] - next_cursor: Nullable[str] - data: List[UnifiedHrisTimesheetEntryOutput] - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["prev_cursor", "next_cursor"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -class ListHrisTimesheetentriesResponseTypedDict(TypedDict): - result: ListHrisTimesheetentriesResponseBodyTypedDict - - -class ListHrisTimesheetentriesResponse(BaseModel): - next: Callable[[], Optional[ListHrisTimesheetentriesResponse]] - - result: ListHrisTimesheetentriesResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationactionop.py b/src/panora_sdk/models/listmarketingautomationactionop.py index 8ac987c..bff9996 100644 --- a/src/panora_sdk/models/listmarketingautomationactionop.py +++ b/src/panora_sdk/models/listmarketingautomationactionop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationactionoutput import UnifiedMarketingautomationActionOutput, UnifiedMarketingautomationActionOutputTypedDict +from .unifiedmarketingautomationactionoutput import ( + UnifiedMarketingautomationActionOutput, + UnifiedMarketingautomationActionOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingautomationActionRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingautomationActionRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationActionRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationActionResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationActionOutputTypedDict] - + class ListMarketingautomationActionResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationActionOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingautomationActionResponseTypedDict(TypedDict): result: ListMarketingautomationActionResponseBodyTypedDict - + class ListMarketingautomationActionResponse(BaseModel): next: Callable[[], Optional[ListMarketingautomationActionResponse]] - + result: ListMarketingautomationActionResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationautomationsop.py b/src/panora_sdk/models/listmarketingautomationautomationsop.py index 7dc6b74..8550235 100644 --- a/src/panora_sdk/models/listmarketingautomationautomationsop.py +++ b/src/panora_sdk/models/listmarketingautomationautomationsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationautomationoutput import UnifiedMarketingautomationAutomationOutput, UnifiedMarketingautomationAutomationOutputTypedDict +from .unifiedmarketingautomationautomationoutput import ( + UnifiedMarketingautomationAutomationOutput, + UnifiedMarketingautomationAutomationOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingautomationAutomationsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingautomationAutomationsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationAutomationsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationAutomationsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationAutomationOutputTypedDict] - + class ListMarketingautomationAutomationsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationAutomationOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingautomationAutomationsResponseTypedDict(TypedDict): result: ListMarketingautomationAutomationsResponseBodyTypedDict - + class ListMarketingautomationAutomationsResponse(BaseModel): next: Callable[[], Optional[ListMarketingautomationAutomationsResponse]] - + result: ListMarketingautomationAutomationsResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationcampaignsop.py b/src/panora_sdk/models/listmarketingautomationcampaignsop.py index bba2bb4..7ecc05a 100644 --- a/src/panora_sdk/models/listmarketingautomationcampaignsop.py +++ b/src/panora_sdk/models/listmarketingautomationcampaignsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationcampaignoutput import UnifiedMarketingautomationCampaignOutput, UnifiedMarketingautomationCampaignOutputTypedDict +from .unifiedmarketingautomationcampaignoutput import ( + UnifiedMarketingautomationCampaignOutput, + UnifiedMarketingautomationCampaignOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingautomationCampaignsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingautomationCampaignsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationCampaignsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationCampaignsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationCampaignOutputTypedDict] - + class ListMarketingautomationCampaignsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationCampaignOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingautomationCampaignsResponseTypedDict(TypedDict): result: ListMarketingautomationCampaignsResponseBodyTypedDict - + class ListMarketingautomationCampaignsResponse(BaseModel): next: Callable[[], Optional[ListMarketingautomationCampaignsResponse]] - + result: ListMarketingautomationCampaignsResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationcontactsop.py b/src/panora_sdk/models/listmarketingautomationcontactsop.py index 78c7537..e68ac2a 100644 --- a/src/panora_sdk/models/listmarketingautomationcontactsop.py +++ b/src/panora_sdk/models/listmarketingautomationcontactsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationcontactoutput import UnifiedMarketingautomationContactOutput, UnifiedMarketingautomationContactOutputTypedDict +from .unifiedmarketingautomationcontactoutput import ( + UnifiedMarketingautomationContactOutput, + UnifiedMarketingautomationContactOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingAutomationContactsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingAutomationContactsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingAutomationContactsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingAutomationContactsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationContactOutputTypedDict] - + class ListMarketingAutomationContactsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationContactOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingAutomationContactsResponseTypedDict(TypedDict): result: ListMarketingAutomationContactsResponseBodyTypedDict - + class ListMarketingAutomationContactsResponse(BaseModel): next: Callable[[], Optional[ListMarketingAutomationContactsResponse]] - + result: ListMarketingAutomationContactsResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationemailsop.py b/src/panora_sdk/models/listmarketingautomationemailsop.py index e550728..4ed83b7 100644 --- a/src/panora_sdk/models/listmarketingautomationemailsop.py +++ b/src/panora_sdk/models/listmarketingautomationemailsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationemailoutput import UnifiedMarketingautomationEmailOutput, UnifiedMarketingautomationEmailOutputTypedDict +from .unifiedmarketingautomationemailoutput import ( + UnifiedMarketingautomationEmailOutput, + UnifiedMarketingautomationEmailOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingautomationEmailsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingautomationEmailsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationEmailsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationEmailsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationEmailOutputTypedDict] - + class ListMarketingautomationEmailsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationEmailOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingautomationEmailsResponseTypedDict(TypedDict): result: ListMarketingautomationEmailsResponseBodyTypedDict - + class ListMarketingautomationEmailsResponse(BaseModel): next: Callable[[], Optional[ListMarketingautomationEmailsResponse]] - + result: ListMarketingautomationEmailsResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationeventsop.py b/src/panora_sdk/models/listmarketingautomationeventsop.py index 55b1b51..f6258ee 100644 --- a/src/panora_sdk/models/listmarketingautomationeventsop.py +++ b/src/panora_sdk/models/listmarketingautomationeventsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationeventoutput import UnifiedMarketingautomationEventOutput, UnifiedMarketingautomationEventOutputTypedDict +from .unifiedmarketingautomationeventoutput import ( + UnifiedMarketingautomationEventOutput, + UnifiedMarketingautomationEventOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingAutomationEventsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingAutomationEventsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingAutomationEventsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingAutomationEventsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationEventOutputTypedDict] - + class ListMarketingAutomationEventsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationEventOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingAutomationEventsResponseTypedDict(TypedDict): result: ListMarketingAutomationEventsResponseBodyTypedDict - + class ListMarketingAutomationEventsResponse(BaseModel): next: Callable[[], Optional[ListMarketingAutomationEventsResponse]] - + result: ListMarketingAutomationEventsResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationlistsop.py b/src/panora_sdk/models/listmarketingautomationlistsop.py index bda6ecb..b0c7ee6 100644 --- a/src/panora_sdk/models/listmarketingautomationlistsop.py +++ b/src/panora_sdk/models/listmarketingautomationlistsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationlistoutput import UnifiedMarketingautomationListOutput, UnifiedMarketingautomationListOutputTypedDict +from .unifiedmarketingautomationlistoutput import ( + UnifiedMarketingautomationListOutput, + UnifiedMarketingautomationListOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingautomationListsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingautomationListsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationListsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationListsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationListOutputTypedDict] - + class ListMarketingautomationListsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationListOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingautomationListsResponseTypedDict(TypedDict): result: ListMarketingautomationListsResponseBodyTypedDict - + class ListMarketingautomationListsResponse(BaseModel): next: Callable[[], Optional[ListMarketingautomationListsResponse]] - + result: ListMarketingautomationListsResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationmessagesop.py b/src/panora_sdk/models/listmarketingautomationmessagesop.py index d5f479f..9993c40 100644 --- a/src/panora_sdk/models/listmarketingautomationmessagesop.py +++ b/src/panora_sdk/models/listmarketingautomationmessagesop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationmessageoutput import UnifiedMarketingautomationMessageOutput, UnifiedMarketingautomationMessageOutputTypedDict +from .unifiedmarketingautomationmessageoutput import ( + UnifiedMarketingautomationMessageOutput, + UnifiedMarketingautomationMessageOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingautomationMessagesRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingautomationMessagesRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationMessagesRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationMessagesResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationMessageOutputTypedDict] - + class ListMarketingautomationMessagesResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationMessageOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingautomationMessagesResponseTypedDict(TypedDict): result: ListMarketingautomationMessagesResponseBodyTypedDict - + class ListMarketingautomationMessagesResponse(BaseModel): next: Callable[[], Optional[ListMarketingautomationMessagesResponse]] - + result: ListMarketingautomationMessagesResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationtemplatesop.py b/src/panora_sdk/models/listmarketingautomationtemplatesop.py index c6b91a1..51c9b41 100644 --- a/src/panora_sdk/models/listmarketingautomationtemplatesop.py +++ b/src/panora_sdk/models/listmarketingautomationtemplatesop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationtemplateoutput import UnifiedMarketingautomationTemplateOutput, UnifiedMarketingautomationTemplateOutputTypedDict +from .unifiedmarketingautomationtemplateoutput import ( + UnifiedMarketingautomationTemplateOutput, + UnifiedMarketingautomationTemplateOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingautomationTemplatesRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingautomationTemplatesRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationTemplatesRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingautomationTemplatesResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationTemplateOutputTypedDict] - + class ListMarketingautomationTemplatesResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationTemplateOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingautomationTemplatesResponseTypedDict(TypedDict): result: ListMarketingautomationTemplatesResponseBodyTypedDict - + class ListMarketingautomationTemplatesResponse(BaseModel): next: Callable[[], Optional[ListMarketingautomationTemplatesResponse]] - + result: ListMarketingautomationTemplatesResponseBody - diff --git a/src/panora_sdk/models/listmarketingautomationusersop.py b/src/panora_sdk/models/listmarketingautomationusersop.py index 96f2ea9..79d5e45 100644 --- a/src/panora_sdk/models/listmarketingautomationusersop.py +++ b/src/panora_sdk/models/listmarketingautomationusersop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedmarketingautomationuseroutput import UnifiedMarketingautomationUserOutput, UnifiedMarketingautomationUserOutputTypedDict +from .unifiedmarketingautomationuseroutput import ( + UnifiedMarketingautomationUserOutput, + UnifiedMarketingautomationUserOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListMarketingAutomationUsersRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListMarketingAutomationUsersRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListMarketingAutomationUsersRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListMarketingAutomationUsersResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedMarketingautomationUserOutputTypedDict] - + class ListMarketingAutomationUsersResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedMarketingautomationUserOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListMarketingAutomationUsersResponseTypedDict(TypedDict): result: ListMarketingAutomationUsersResponseBodyTypedDict - + class ListMarketingAutomationUsersResponse(BaseModel): next: Callable[[], Optional[ListMarketingAutomationUsersResponse]] - + result: ListMarketingAutomationUsersResponseBody - diff --git a/src/panora_sdk/models/listticketingaccountop.py b/src/panora_sdk/models/listticketingaccountop.py index ae04805..f196310 100644 --- a/src/panora_sdk/models/listticketingaccountop.py +++ b/src/panora_sdk/models/listticketingaccountop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingaccountoutput import UnifiedTicketingAccountOutput, UnifiedTicketingAccountOutputTypedDict +from .unifiedticketingaccountoutput import ( + UnifiedTicketingAccountOutput, + UnifiedTicketingAccountOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingAccountRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingAccountRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingAccountRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingAccountResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingAccountOutputTypedDict] - + class ListTicketingAccountResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingAccountOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingAccountResponseTypedDict(TypedDict): result: ListTicketingAccountResponseBodyTypedDict - + class ListTicketingAccountResponse(BaseModel): next: Callable[[], Optional[ListTicketingAccountResponse]] - + result: ListTicketingAccountResponseBody - diff --git a/src/panora_sdk/models/listticketingattachmentsop.py b/src/panora_sdk/models/listticketingattachmentsop.py index f310562..b3e5567 100644 --- a/src/panora_sdk/models/listticketingattachmentsop.py +++ b/src/panora_sdk/models/listticketingattachmentsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingattachmentoutput import UnifiedTicketingAttachmentOutput, UnifiedTicketingAttachmentOutputTypedDict +from .unifiedticketingattachmentoutput import ( + UnifiedTicketingAttachmentOutput, + UnifiedTicketingAttachmentOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingAttachmentsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingAttachmentsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingAttachmentsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingAttachmentsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingAttachmentOutputTypedDict] - + class ListTicketingAttachmentsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingAttachmentOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingAttachmentsResponseTypedDict(TypedDict): result: ListTicketingAttachmentsResponseBodyTypedDict - + class ListTicketingAttachmentsResponse(BaseModel): next: Callable[[], Optional[ListTicketingAttachmentsResponse]] - + result: ListTicketingAttachmentsResponseBody - diff --git a/src/panora_sdk/models/listticketingcollectionsop.py b/src/panora_sdk/models/listticketingcollectionsop.py index 0e2614e..6c17022 100644 --- a/src/panora_sdk/models/listticketingcollectionsop.py +++ b/src/panora_sdk/models/listticketingcollectionsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingcollectionoutput import UnifiedTicketingCollectionOutput, UnifiedTicketingCollectionOutputTypedDict +from .unifiedticketingcollectionoutput import ( + UnifiedTicketingCollectionOutput, + UnifiedTicketingCollectionOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingCollectionsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingCollectionsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingCollectionsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingCollectionsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingCollectionOutputTypedDict] - + class ListTicketingCollectionsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingCollectionOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingCollectionsResponseTypedDict(TypedDict): result: ListTicketingCollectionsResponseBodyTypedDict - + class ListTicketingCollectionsResponse(BaseModel): next: Callable[[], Optional[ListTicketingCollectionsResponse]] - + result: ListTicketingCollectionsResponseBody - diff --git a/src/panora_sdk/models/listticketingcommentsop.py b/src/panora_sdk/models/listticketingcommentsop.py index f180af3..57d2b00 100644 --- a/src/panora_sdk/models/listticketingcommentsop.py +++ b/src/panora_sdk/models/listticketingcommentsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingcommentoutput import UnifiedTicketingCommentOutput, UnifiedTicketingCommentOutputTypedDict +from .unifiedticketingcommentoutput import ( + UnifiedTicketingCommentOutput, + UnifiedTicketingCommentOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingCommentsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingCommentsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingCommentsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingCommentsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingCommentOutputTypedDict] - + class ListTicketingCommentsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingCommentOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingCommentsResponseTypedDict(TypedDict): result: ListTicketingCommentsResponseBodyTypedDict - + class ListTicketingCommentsResponse(BaseModel): next: Callable[[], Optional[ListTicketingCommentsResponse]] - + result: ListTicketingCommentsResponseBody - diff --git a/src/panora_sdk/models/listticketingcontactsop.py b/src/panora_sdk/models/listticketingcontactsop.py index fa5afd3..4e875c0 100644 --- a/src/panora_sdk/models/listticketingcontactsop.py +++ b/src/panora_sdk/models/listticketingcontactsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingcontactoutput import UnifiedTicketingContactOutput, UnifiedTicketingContactOutputTypedDict +from .unifiedticketingcontactoutput import ( + UnifiedTicketingContactOutput, + UnifiedTicketingContactOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingContactsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingContactsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingContactsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingContactsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingContactOutputTypedDict] - + class ListTicketingContactsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingContactOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingContactsResponseTypedDict(TypedDict): result: ListTicketingContactsResponseBodyTypedDict - + class ListTicketingContactsResponse(BaseModel): next: Callable[[], Optional[ListTicketingContactsResponse]] - + result: ListTicketingContactsResponseBody - diff --git a/src/panora_sdk/models/listticketingtagsop.py b/src/panora_sdk/models/listticketingtagsop.py index 43b7f01..87a74cf 100644 --- a/src/panora_sdk/models/listticketingtagsop.py +++ b/src/panora_sdk/models/listticketingtagsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingtagoutput import UnifiedTicketingTagOutput, UnifiedTicketingTagOutputTypedDict +from .unifiedticketingtagoutput import ( + UnifiedTicketingTagOutput, + UnifiedTicketingTagOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingTagsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingTagsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingTagsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingTagsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingTagOutputTypedDict] - + class ListTicketingTagsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingTagOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingTagsResponseTypedDict(TypedDict): result: ListTicketingTagsResponseBodyTypedDict - + class ListTicketingTagsResponse(BaseModel): next: Callable[[], Optional[ListTicketingTagsResponse]] - + result: ListTicketingTagsResponseBody - diff --git a/src/panora_sdk/models/listticketingteamsop.py b/src/panora_sdk/models/listticketingteamsop.py index ffc3051..fca5acb 100644 --- a/src/panora_sdk/models/listticketingteamsop.py +++ b/src/panora_sdk/models/listticketingteamsop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingteamoutput import UnifiedTicketingTeamOutput, UnifiedTicketingTeamOutputTypedDict +from .unifiedticketingteamoutput import ( + UnifiedTicketingTeamOutput, + UnifiedTicketingTeamOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingTeamsRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingTeamsRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingTeamsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingTeamsResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingTeamOutputTypedDict] - + class ListTicketingTeamsResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingTeamOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingTeamsResponseTypedDict(TypedDict): result: ListTicketingTeamsResponseBodyTypedDict - + class ListTicketingTeamsResponse(BaseModel): next: Callable[[], Optional[ListTicketingTeamsResponse]] - + result: ListTicketingTeamsResponseBody - diff --git a/src/panora_sdk/models/listticketingticketop.py b/src/panora_sdk/models/listticketingticketop.py index 353f9e4..dcfdc22 100644 --- a/src/panora_sdk/models/listticketingticketop.py +++ b/src/panora_sdk/models/listticketingticketop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingticketoutput import UnifiedTicketingTicketOutput, UnifiedTicketingTicketOutputTypedDict +from .unifiedticketingticketoutput import ( + UnifiedTicketingTicketOutput, + UnifiedTicketingTicketOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingTicketRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingTicketRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingTicketRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingTicketResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingTicketOutputTypedDict] - + class ListTicketingTicketResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingTicketOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingTicketResponseTypedDict(TypedDict): result: ListTicketingTicketResponseBodyTypedDict - + class ListTicketingTicketResponse(BaseModel): next: Callable[[], Optional[ListTicketingTicketResponse]] - + result: ListTicketingTicketResponseBody - diff --git a/src/panora_sdk/models/listticketingusersop.py b/src/panora_sdk/models/listticketingusersop.py index 77d8eb2..7cba1d7 100644 --- a/src/panora_sdk/models/listticketingusersop.py +++ b/src/panora_sdk/models/listticketingusersop.py @@ -1,13 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketinguseroutput import UnifiedTicketingUserOutput, UnifiedTicketingUserOutputTypedDict +from .unifiedticketinguseroutput import ( + UnifiedTicketingUserOutput, + UnifiedTicketingUserOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from panora_sdk.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer -from typing import Callable, List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Callable, List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class ListTicketingUsersRequestTypedDict(TypedDict): @@ -19,30 +22,48 @@ class ListTicketingUsersRequestTypedDict(TypedDict): r"""Set to get the number of records.""" cursor: NotRequired[str] r"""Set to get the number of records after this cursor.""" - + class ListTicketingUsersRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original software.""" - limit: Annotated[Optional[float], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = 50 + + limit: Annotated[ + Optional[float], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records.""" - cursor: Annotated[Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + cursor: Annotated[ + Optional[str], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to get the number of records after this cursor.""" - + class ListTicketingUsersResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingUserOutputTypedDict] - + class ListTicketingUsersResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingUserOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -56,31 +77,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + class ListTicketingUsersResponseTypedDict(TypedDict): result: ListTicketingUsersResponseBodyTypedDict - + class ListTicketingUsersResponse(BaseModel): next: Callable[[], Optional[ListTicketingUsersResponse]] - + result: ListTicketingUsersResponseBody - diff --git a/src/panora_sdk/models/logindto.py b/src/panora_sdk/models/logindto.py index 9ce2740..ca7cb12 100644 --- a/src/panora_sdk/models/logindto.py +++ b/src/panora_sdk/models/logindto.py @@ -2,18 +2,18 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import Optional, TypedDict -from typing_extensions import NotRequired +from typing_extensions import TypedDict class LoginDtoTypedDict(TypedDict): + id_user: str email: str password_hash: str - id_user: NotRequired[str] - + class LoginDto(BaseModel): + id_user: str + email: str + password_hash: str - id_user: Optional[str] = None - diff --git a/src/panora_sdk/models/mapfieldtoproviderdto.py b/src/panora_sdk/models/mapfieldtoproviderdto.py index 08023a0..de16a9d 100644 --- a/src/panora_sdk/models/mapfieldtoproviderdto.py +++ b/src/panora_sdk/models/mapfieldtoproviderdto.py @@ -4,8 +4,7 @@ from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL import pydantic from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class MapFieldToProviderDtoTypedDict(TypedDict): @@ -17,22 +16,30 @@ class MapFieldToProviderDtoTypedDict(TypedDict): r"""The source provider""" linked_user_id: Nullable[str] r"""The linked user ID""" - + class MapFieldToProviderDto(BaseModel): attribute_id: Annotated[Nullable[str], pydantic.Field(alias="attributeId")] r"""The attribute ID""" + source_custom_field_id: Nullable[str] r"""The source custom field ID""" + source_provider: Nullable[str] r"""The source provider""" + linked_user_id: Nullable[str] r"""The linked user ID""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] - nullable_fields = ["attributeId", "source_custom_field_id", "source_provider", "linked_user_id"] + nullable_fields = [ + "attributeId", + "source_custom_field_id", + "source_provider", + "linked_user_id", + ] null_default_fields = [] serialized = handler(self) @@ -42,21 +49,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/passthroughrequestdto.py b/src/panora_sdk/models/passthroughrequestdto.py index 7b54ca1..a070a86 100644 --- a/src/panora_sdk/models/passthroughrequestdto.py +++ b/src/panora_sdk/models/passthroughrequestdto.py @@ -2,53 +2,56 @@ from __future__ import annotations from enum import Enum -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL import pydantic from pydantic import model_serializer -from typing import Any, Dict, List, Optional, TypedDict, Union -from typing_extensions import Annotated, NotRequired +from typing import Any, Dict, List, Union +from typing_extensions import Annotated, TypedDict class PassThroughRequestDtoMethod(str, Enum): GET = "GET" POST = "POST" + class DataTypedDict(TypedDict): pass - + class Data(BaseModel): pass - -class HeadersTypedDict(TypedDict): - pass - -class Headers(BaseModel): - pass - +RequestFormatTypedDict = Union[Dict[str, Any], List[Dict[str, Any]]] + + +RequestFormat = Union[Dict[str, Any], List[Dict[str, Any]]] + class PassThroughRequestDtoTypedDict(TypedDict): method: PassThroughRequestDtoMethod path: Nullable[str] - data: NotRequired[DataTypedDict] - request_format: NotRequired[Nullable[RequestFormatTypedDict]] - override_base_url: NotRequired[Nullable[Dict[str, Any]]] - headers: NotRequired[HeadersTypedDict] - + data: DataTypedDict + request_format: Nullable[RequestFormatTypedDict] + override_base_url: Nullable[Dict[str, Any]] + class PassThroughRequestDto(BaseModel): method: PassThroughRequestDtoMethod + path: Nullable[str] - data: Optional[Data] = None - request_format: OptionalNullable[RequestFormat] = UNSET - override_base_url: Annotated[OptionalNullable[Dict[str, Any]], pydantic.Field(alias="overrideBaseUrl")] = UNSET - headers: Optional[Headers] = None - + + data: Data + + request_format: Nullable[RequestFormat] + + override_base_url: Annotated[ + Nullable[Dict[str, Any]], pydantic.Field(alias="overrideBaseUrl") + ] + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["data", "request_format", "overrideBaseUrl", "headers"] + optional_fields = [] nullable_fields = ["path", "request_format", "overrideBaseUrl"] null_default_fields = [] @@ -59,27 +62,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - - -RequestFormatTypedDict = Union[Dict[str, Any], List[Dict[str, Any]]] - - -RequestFormat = Union[Dict[str, Any], List[Dict[str, Any]]] - diff --git a/src/panora_sdk/models/phone.py b/src/panora_sdk/models/phone.py index 2b94d4c..33baa4b 100644 --- a/src/panora_sdk/models/phone.py +++ b/src/panora_sdk/models/phone.py @@ -1,10 +1,15 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class PhoneTypedDict(TypedDict): @@ -14,16 +19,18 @@ class PhoneTypedDict(TypedDict): r"""The phone type. Authorized values are either MOBILE or WORK""" owner_type: NotRequired[Nullable[str]] r"""The owner type of a phone number""" - + class Phone(BaseModel): phone_number: Nullable[str] r"""The phone number starting with a plus (+) followed by the country code (e.g +336676778890 for France)""" + phone_type: Nullable[str] r"""The phone type. Authorized values are either MOBILE or WORK""" + owner_type: OptionalNullable[str] = UNSET r"""The owner type of a phone number""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["owner_type"] @@ -37,21 +44,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/projectresponse.py b/src/panora_sdk/models/projectresponse.py index 6abdae3..e5a23c7 100644 --- a/src/panora_sdk/models/projectresponse.py +++ b/src/panora_sdk/models/projectresponse.py @@ -2,8 +2,7 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import Optional, TypedDict -from typing_extensions import NotRequired +from typing_extensions import TypedDict class ProjectResponseTypedDict(TypedDict): @@ -13,29 +12,34 @@ class ProjectResponseTypedDict(TypedDict): r"""Name of the project""" sync_mode: str r"""Synchronization mode of the project""" + pull_frequency: float + r"""Frequency of pulling data in seconds""" + redirect_url: str + r"""Redirect URL for the project""" id_user: str r"""User ID associated with the project""" id_connector_set: str r"""Connector set ID associated with the project""" - pull_frequency: NotRequired[float] - r"""Frequency of pulling data in seconds""" - redirect_url: NotRequired[str] - r"""Redirect URL for the project""" - + class ProjectResponse(BaseModel): id_project: str r"""Unique identifier for the project""" + name: str r"""Name of the project""" + sync_mode: str r"""Synchronization mode of the project""" + + pull_frequency: float + r"""Frequency of pulling data in seconds""" + + redirect_url: str + r"""Redirect URL for the project""" + id_user: str r"""User ID associated with the project""" + id_connector_set: str r"""Connector set ID associated with the project""" - pull_frequency: Optional[float] = None - r"""Frequency of pulling data in seconds""" - redirect_url: Optional[str] = None - r"""Redirect URL for the project""" - diff --git a/src/panora_sdk/models/querybody.py b/src/panora_sdk/models/querybody.py index ca22e15..dada420 100644 --- a/src/panora_sdk/models/querybody.py +++ b/src/panora_sdk/models/querybody.py @@ -1,26 +1,32 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) import pydantic from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import Annotated, NotRequired +from typing_extensions import Annotated, NotRequired, TypedDict class QueryBodyTypedDict(TypedDict): query: str - r"""The query you want to received embeddings adn chunks for""" + r"""The query you want to received embeddings and chunks for""" top_k: NotRequired[Nullable[float]] r"""The number of most appropriate documents for your query.""" - + class QueryBody(BaseModel): query: str - r"""The query you want to received embeddings adn chunks for""" + r"""The query you want to received embeddings and chunks for""" + top_k: Annotated[OptionalNullable[float], pydantic.Field(alias="topK")] = UNSET r"""The number of most appropriate documents for your query.""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["topK"] @@ -34,21 +40,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/queryop.py b/src/panora_sdk/models/queryop.py index 3e1dea0..3be7faf 100644 --- a/src/panora_sdk/models/queryop.py +++ b/src/panora_sdk/models/queryop.py @@ -5,26 +5,23 @@ from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, HeaderMetadata, RequestMetadata import pydantic -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class QueryRequestTypedDict(TypedDict): x_connection_token: str r"""The connection token""" query_body: QueryBodyTypedDict - + class QueryRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - query_body: Annotated[QueryBody, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - - -class QueryResponseBodyTypedDict(TypedDict): - pass - -class QueryResponseBody(BaseModel): - pass - + query_body: Annotated[ + QueryBody, FieldMetadata(request=RequestMetadata(media_type="application/json")) + ] diff --git a/src/panora_sdk/models/ragqueryoutput.py b/src/panora_sdk/models/ragqueryoutput.py new file mode 100644 index 0000000..b6b8c68 --- /dev/null +++ b/src/panora_sdk/models/ragqueryoutput.py @@ -0,0 +1,62 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL +from pydantic import model_serializer +from typing import Any, Dict, List +from typing_extensions import TypedDict + + +class RagQueryOutputTypedDict(TypedDict): + chunk: str + r"""The chunk which matches the embed query""" + metadata: Nullable[Dict[str, Any]] + r"""The metadata tied to the chunk""" + score: Nullable[float] + r"""The score""" + embedding: Nullable[List[float]] + r"""The embedding of the relevant chunk""" + + +class RagQueryOutput(BaseModel): + chunk: str + r"""The chunk which matches the embed query""" + + metadata: Nullable[Dict[str, Any]] + r"""The metadata tied to the chunk""" + + score: Nullable[float] + r"""The score""" + + embedding: Nullable[List[float]] + r"""The embedding of the relevant chunk""" + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = [] + nullable_fields = ["metadata", "score", "embedding"] + null_default_fields = [] + + serialized = handler(self) + + m = {} + + for n, f in self.model_fields.items(): + k = f.alias or n + val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + + if val is not None and val != UNSET_SENTINEL: + m[k] = val + elif val != UNSET_SENTINEL and ( + not k in optional_fields or (optional_nullable and is_set) + ): + m[k] = val + + return m diff --git a/src/panora_sdk/models/remoteidop.py b/src/panora_sdk/models/remoteidop.py index 7fd27df..1f1a0c6 100644 --- a/src/panora_sdk/models/remoteidop.py +++ b/src/panora_sdk/models/remoteidop.py @@ -4,14 +4,16 @@ from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, QueryParamMetadata import pydantic -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class RemoteIDRequestTypedDict(TypedDict): remote_id: str - + class RemoteIDRequest(BaseModel): - remote_id: Annotated[str, pydantic.Field(alias="remoteId"), FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] - + remote_id: Annotated[ + str, + pydantic.Field(alias="remoteId"), + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] diff --git a/src/panora_sdk/models/requestop.py b/src/panora_sdk/models/requestop.py index 6d3a7e9..41dc29b 100644 --- a/src/panora_sdk/models/requestop.py +++ b/src/panora_sdk/models/requestop.py @@ -5,38 +5,30 @@ from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, HeaderMetadata, RequestMetadata import pydantic -from typing import TypedDict, Union -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class RequestRequestTypedDict(TypedDict): x_connection_token: str pass_through_request_dto: PassThroughRequestDtoTypedDict - + class RequestRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - pass_through_request_dto: Annotated[PassThroughRequestDto, FieldMetadata(request=RequestMetadata(media_type="application/json"))] - + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] -class RequestPassthroughResponseBodyTypedDict(TypedDict): - pass - + pass_through_request_dto: Annotated[ + PassThroughRequestDto, + FieldMetadata(request=RequestMetadata(media_type="application/json")), + ] -class RequestPassthroughResponseBody(BaseModel): - pass - class RequestResponseBodyTypedDict(TypedDict): pass - + class RequestResponseBody(BaseModel): pass - - -RequestResponseTypedDict = Union[RequestResponseBodyTypedDict, RequestPassthroughResponseBodyTypedDict] - - -RequestResponse = Union[RequestResponseBody, RequestPassthroughResponseBody] - diff --git a/src/panora_sdk/models/resyncstatusdto.py b/src/panora_sdk/models/resyncstatusdto.py index 36be6c2..3e007ab 100644 --- a/src/panora_sdk/models/resyncstatusdto.py +++ b/src/panora_sdk/models/resyncstatusdto.py @@ -5,36 +5,39 @@ from enum import Enum from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import TypedDict +from typing_extensions import TypedDict class Vertical(str, Enum): TICKETING = "ticketing" - ATS = "ats" ACCOUNTING = "accounting" - HRIS = "hris" CRM = "crm" FILESTORAGE = "filestorage" ECOMMERCE = "ecommerce" MARKETINGAUTOMATION = "marketingautomation" + class Status(str, Enum): SUCCESS = "success" FAIL = "fail" + class ResyncStatusDtoTypedDict(TypedDict): timestamp: Nullable[datetime] vertical: Nullable[Vertical] provider: Nullable[str] status: Nullable[Status] - + class ResyncStatusDto(BaseModel): timestamp: Nullable[datetime] + vertical: Nullable[Vertical] + provider: Nullable[str] + status: Nullable[Status] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -48,21 +51,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/retrieveaccountingaccountop.py b/src/panora_sdk/models/retrieveaccountingaccountop.py index 5a00aa4..07cf3dc 100644 --- a/src/panora_sdk/models/retrieveaccountingaccountop.py +++ b/src/panora_sdk/models/retrieveaccountingaccountop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingAccountRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingAccountRequestTypedDict(TypedDict): r"""id of the account you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingAccountRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the account you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingaddressop.py b/src/panora_sdk/models/retrieveaccountingaddressop.py index 3d688b2..5d2be60 100644 --- a/src/panora_sdk/models/retrieveaccountingaddressop.py +++ b/src/panora_sdk/models/retrieveaccountingaddressop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingAddressRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingAddressRequestTypedDict(TypedDict): r"""id of the address you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingAddressRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the address you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingattachmentop.py b/src/panora_sdk/models/retrieveaccountingattachmentop.py index e132c4d..fc81aa5 100644 --- a/src/panora_sdk/models/retrieveaccountingattachmentop.py +++ b/src/panora_sdk/models/retrieveaccountingattachmentop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingAttachmentRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingAttachmentRequestTypedDict(TypedDict): r"""id of the attachment you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingAttachmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the attachment you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingbalancesheetop.py b/src/panora_sdk/models/retrieveaccountingbalancesheetop.py index 8619a9c..a096bb4 100644 --- a/src/panora_sdk/models/retrieveaccountingbalancesheetop.py +++ b/src/panora_sdk/models/retrieveaccountingbalancesheetop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingBalanceSheetRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingBalanceSheetRequestTypedDict(TypedDict): r"""id of the balancesheet you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingBalanceSheetRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the balancesheet you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingcashflowstatementop.py b/src/panora_sdk/models/retrieveaccountingcashflowstatementop.py index fc02bb3..f907899 100644 --- a/src/panora_sdk/models/retrieveaccountingcashflowstatementop.py +++ b/src/panora_sdk/models/retrieveaccountingcashflowstatementop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingCashflowStatementRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingCashflowStatementRequestTypedDict(TypedDict): r"""id of the cashflowstatement you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingCashflowStatementRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the cashflowstatement you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingcompanyinfoop.py b/src/panora_sdk/models/retrieveaccountingcompanyinfoop.py index 47defcd..d8faaae 100644 --- a/src/panora_sdk/models/retrieveaccountingcompanyinfoop.py +++ b/src/panora_sdk/models/retrieveaccountingcompanyinfoop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingCompanyInfoRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingCompanyInfoRequestTypedDict(TypedDict): r"""id of the companyinfo you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingCompanyInfoRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the companyinfo you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingcontactop.py b/src/panora_sdk/models/retrieveaccountingcontactop.py index ecb1bc2..03083f9 100644 --- a/src/panora_sdk/models/retrieveaccountingcontactop.py +++ b/src/panora_sdk/models/retrieveaccountingcontactop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingContactRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingContactRequestTypedDict(TypedDict): r"""id of the contact you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingContactRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the contact you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingcreditnoteop.py b/src/panora_sdk/models/retrieveaccountingcreditnoteop.py index 3d53e18..519bc5c 100644 --- a/src/panora_sdk/models/retrieveaccountingcreditnoteop.py +++ b/src/panora_sdk/models/retrieveaccountingcreditnoteop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingCreditNoteRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingCreditNoteRequestTypedDict(TypedDict): r"""id of the creditnote you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingCreditNoteRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the creditnote you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingexpenseop.py b/src/panora_sdk/models/retrieveaccountingexpenseop.py index db5f282..5c56454 100644 --- a/src/panora_sdk/models/retrieveaccountingexpenseop.py +++ b/src/panora_sdk/models/retrieveaccountingexpenseop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingExpenseRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingExpenseRequestTypedDict(TypedDict): r"""id of the expense you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingExpenseRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the expense you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingincomestatementop.py b/src/panora_sdk/models/retrieveaccountingincomestatementop.py index 1edca93..1624ae8 100644 --- a/src/panora_sdk/models/retrieveaccountingincomestatementop.py +++ b/src/panora_sdk/models/retrieveaccountingincomestatementop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingIncomeStatementRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingIncomeStatementRequestTypedDict(TypedDict): r"""id of the incomestatement you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingIncomeStatementRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the incomestatement you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountinginvoiceop.py b/src/panora_sdk/models/retrieveaccountinginvoiceop.py index 71a9439..c267f02 100644 --- a/src/panora_sdk/models/retrieveaccountinginvoiceop.py +++ b/src/panora_sdk/models/retrieveaccountinginvoiceop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingInvoiceRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingInvoiceRequestTypedDict(TypedDict): r"""id of the invoice you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingInvoiceRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the invoice you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingitemop.py b/src/panora_sdk/models/retrieveaccountingitemop.py index b58aacb..40cfefa 100644 --- a/src/panora_sdk/models/retrieveaccountingitemop.py +++ b/src/panora_sdk/models/retrieveaccountingitemop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingItemRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingItemRequestTypedDict(TypedDict): r"""id of the item you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingItemRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the item you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingjournalentryop.py b/src/panora_sdk/models/retrieveaccountingjournalentryop.py index 104af33..f912365 100644 --- a/src/panora_sdk/models/retrieveaccountingjournalentryop.py +++ b/src/panora_sdk/models/retrieveaccountingjournalentryop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingJournalEntryRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingJournalEntryRequestTypedDict(TypedDict): r"""id of the journalentry you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingJournalEntryRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the journalentry you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingpaymentop.py b/src/panora_sdk/models/retrieveaccountingpaymentop.py index 9a996e5..16f3e5a 100644 --- a/src/panora_sdk/models/retrieveaccountingpaymentop.py +++ b/src/panora_sdk/models/retrieveaccountingpaymentop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingPaymentRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingPaymentRequestTypedDict(TypedDict): r"""id of the payment you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingPaymentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the payment you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingphonenumberop.py b/src/panora_sdk/models/retrieveaccountingphonenumberop.py index a2617e8..f269bd7 100644 --- a/src/panora_sdk/models/retrieveaccountingphonenumberop.py +++ b/src/panora_sdk/models/retrieveaccountingphonenumberop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingPhonenumberRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingPhonenumberRequestTypedDict(TypedDict): r"""id of the phonenumber you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingPhonenumberRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the phonenumber you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingpurchaseorderop.py b/src/panora_sdk/models/retrieveaccountingpurchaseorderop.py index ef354f1..354ee47 100644 --- a/src/panora_sdk/models/retrieveaccountingpurchaseorderop.py +++ b/src/panora_sdk/models/retrieveaccountingpurchaseorderop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingPurchaseOrderRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingPurchaseOrderRequestTypedDict(TypedDict): r"""id of the purchaseorder you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingPurchaseOrderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the purchaseorder you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingtaxrateop.py b/src/panora_sdk/models/retrieveaccountingtaxrateop.py index 1166754..7e86b0b 100644 --- a/src/panora_sdk/models/retrieveaccountingtaxrateop.py +++ b/src/panora_sdk/models/retrieveaccountingtaxrateop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingTaxRateRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingTaxRateRequestTypedDict(TypedDict): r"""id of the taxrate you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingTaxRateRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the taxrate you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingtrackingcategoryop.py b/src/panora_sdk/models/retrieveaccountingtrackingcategoryop.py index ed04409..782919d 100644 --- a/src/panora_sdk/models/retrieveaccountingtrackingcategoryop.py +++ b/src/panora_sdk/models/retrieveaccountingtrackingcategoryop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingTrackingCategoryRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingTrackingCategoryRequestTypedDict(TypedDict): r"""id of the trackingcategory you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingTrackingCategoryRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the trackingcategory you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingtransactionop.py b/src/panora_sdk/models/retrieveaccountingtransactionop.py index 4de884e..a3ff9fe 100644 --- a/src/panora_sdk/models/retrieveaccountingtransactionop.py +++ b/src/panora_sdk/models/retrieveaccountingtransactionop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingTransactionRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingTransactionRequestTypedDict(TypedDict): r"""id of the transaction you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingTransactionRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the transaction you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveaccountingvendorcreditop.py b/src/panora_sdk/models/retrieveaccountingvendorcreditop.py index 8b6df62..5af0196 100644 --- a/src/panora_sdk/models/retrieveaccountingvendorcreditop.py +++ b/src/panora_sdk/models/retrieveaccountingvendorcreditop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveAccountingVendorCreditRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveAccountingVendorCreditRequestTypedDict(TypedDict): r"""id of the vendorcredit you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Accounting software.""" - + class RetrieveAccountingVendorCreditRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the vendorcredit you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Accounting software.""" - diff --git a/src/panora_sdk/models/retrieveatsactivityop.py b/src/panora_sdk/models/retrieveatsactivityop.py deleted file mode 100644 index c0ed68f..0000000 --- a/src/panora_sdk/models/retrieveatsactivityop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsActivityRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the activity you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsActivityRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the activity you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsapplicationop.py b/src/panora_sdk/models/retrieveatsapplicationop.py deleted file mode 100644 index 73e264a..0000000 --- a/src/panora_sdk/models/retrieveatsapplicationop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsApplicationRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the application you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsApplicationRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the application you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsattachmentop.py b/src/panora_sdk/models/retrieveatsattachmentop.py deleted file mode 100644 index 15436ac..0000000 --- a/src/panora_sdk/models/retrieveatsattachmentop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsAttachmentRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the attachment you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsAttachmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the attachment you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatscandidateop.py b/src/panora_sdk/models/retrieveatscandidateop.py deleted file mode 100644 index 682b1cd..0000000 --- a/src/panora_sdk/models/retrieveatscandidateop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsCandidateRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the candidate you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsCandidateRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the candidate you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsdepartmentop.py b/src/panora_sdk/models/retrieveatsdepartmentop.py deleted file mode 100644 index 4e1b9c5..0000000 --- a/src/panora_sdk/models/retrieveatsdepartmentop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsDepartmentRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the department you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsDepartmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the department you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatseeocsop.py b/src/panora_sdk/models/retrieveatseeocsop.py deleted file mode 100644 index ecf3366..0000000 --- a/src/panora_sdk/models/retrieveatseeocsop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsEeocsRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the eeocs you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsEeocsRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the eeocs you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsinterviewop.py b/src/panora_sdk/models/retrieveatsinterviewop.py deleted file mode 100644 index 3e7619a..0000000 --- a/src/panora_sdk/models/retrieveatsinterviewop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsInterviewRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the interview you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsInterviewRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the interview you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsjobinterviewstageop.py b/src/panora_sdk/models/retrieveatsjobinterviewstageop.py deleted file mode 100644 index 79cfaf1..0000000 --- a/src/panora_sdk/models/retrieveatsjobinterviewstageop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsJobInterviewStageRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the jobinterviewstage you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsJobInterviewStageRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the jobinterviewstage you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsjobop.py b/src/panora_sdk/models/retrieveatsjobop.py deleted file mode 100644 index 63c4e76..0000000 --- a/src/panora_sdk/models/retrieveatsjobop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsJobRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the job you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsJobRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the job you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsofferop.py b/src/panora_sdk/models/retrieveatsofferop.py deleted file mode 100644 index 6c91d65..0000000 --- a/src/panora_sdk/models/retrieveatsofferop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsOfferRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the offer you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsOfferRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the offer you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsofficeop.py b/src/panora_sdk/models/retrieveatsofficeop.py deleted file mode 100644 index 073fcf0..0000000 --- a/src/panora_sdk/models/retrieveatsofficeop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsOfficeRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the office you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsOfficeRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the office you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsrejectreasonop.py b/src/panora_sdk/models/retrieveatsrejectreasonop.py deleted file mode 100644 index b8877f1..0000000 --- a/src/panora_sdk/models/retrieveatsrejectreasonop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsRejectReasonRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the rejectreason you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsRejectReasonRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the rejectreason you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsscorecardop.py b/src/panora_sdk/models/retrieveatsscorecardop.py deleted file mode 100644 index d8fba1e..0000000 --- a/src/panora_sdk/models/retrieveatsscorecardop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsScorecardRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the scorecard you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsScorecardRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the scorecard you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatstagop.py b/src/panora_sdk/models/retrieveatstagop.py deleted file mode 100644 index bef0faf..0000000 --- a/src/panora_sdk/models/retrieveatstagop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsTagRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the tag you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsTagRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the tag you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveatsuserop.py b/src/panora_sdk/models/retrieveatsuserop.py deleted file mode 100644 index 3edd354..0000000 --- a/src/panora_sdk/models/retrieveatsuserop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveAtsUserRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the user you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Ats software.""" - - -class RetrieveAtsUserRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the user you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrievecollectionop.py b/src/panora_sdk/models/retrievecollectionop.py index 0aced63..8929853 100644 --- a/src/panora_sdk/models/retrievecollectionop.py +++ b/src/panora_sdk/models/retrievecollectionop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCollectionRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCollectionRequestTypedDict(TypedDict): r"""id of the collection you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveCollectionRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the collection you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/retrievecrmcompanyop.py b/src/panora_sdk/models/retrievecrmcompanyop.py index 006939c..e3a6e0b 100644 --- a/src/panora_sdk/models/retrievecrmcompanyop.py +++ b/src/panora_sdk/models/retrievecrmcompanyop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmCompanyRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmCompanyRequestTypedDict(TypedDict): r"""id of the company you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class RetrieveCrmCompanyRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the company you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/retrievecrmcontactop.py b/src/panora_sdk/models/retrievecrmcontactop.py index c68245b..3ff64c9 100644 --- a/src/panora_sdk/models/retrievecrmcontactop.py +++ b/src/panora_sdk/models/retrievecrmcontactop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmContactRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmContactRequestTypedDict(TypedDict): r"""id of the `contact` you want to retrive.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original CRM software.""" - + class RetrieveCrmContactRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the `contact` you want to retrive.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original CRM software.""" - diff --git a/src/panora_sdk/models/retrievecrmdealop.py b/src/panora_sdk/models/retrievecrmdealop.py index a4c3a46..a6ea5e0 100644 --- a/src/panora_sdk/models/retrievecrmdealop.py +++ b/src/panora_sdk/models/retrievecrmdealop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmDealRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmDealRequestTypedDict(TypedDict): r"""id of the deal you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class RetrieveCrmDealRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the deal you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/retrievecrmengagementop.py b/src/panora_sdk/models/retrievecrmengagementop.py index 5c29329..1f4cff5 100644 --- a/src/panora_sdk/models/retrievecrmengagementop.py +++ b/src/panora_sdk/models/retrievecrmengagementop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmEngagementRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmEngagementRequestTypedDict(TypedDict): r"""id of the engagement you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class RetrieveCrmEngagementRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the engagement you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/retrievecrmnoteop.py b/src/panora_sdk/models/retrievecrmnoteop.py index 3a66990..a5624a8 100644 --- a/src/panora_sdk/models/retrievecrmnoteop.py +++ b/src/panora_sdk/models/retrievecrmnoteop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmNoteRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmNoteRequestTypedDict(TypedDict): r"""id of the note you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class RetrieveCrmNoteRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the note you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/retrievecrmstageop.py b/src/panora_sdk/models/retrievecrmstageop.py index be1b3f1..7485857 100644 --- a/src/panora_sdk/models/retrievecrmstageop.py +++ b/src/panora_sdk/models/retrievecrmstageop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmStageRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmStageRequestTypedDict(TypedDict): r"""id of the stage you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class RetrieveCrmStageRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the stage you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/retrievecrmtaskop.py b/src/panora_sdk/models/retrievecrmtaskop.py index 6dac37a..377349e 100644 --- a/src/panora_sdk/models/retrievecrmtaskop.py +++ b/src/panora_sdk/models/retrievecrmtaskop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmTaskRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmTaskRequestTypedDict(TypedDict): r"""id of the task you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class RetrieveCrmTaskRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the task you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/retrievecrmuserop.py b/src/panora_sdk/models/retrievecrmuserop.py index 77c4f25..ca0520b 100644 --- a/src/panora_sdk/models/retrievecrmuserop.py +++ b/src/panora_sdk/models/retrievecrmuserop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveCrmUserRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveCrmUserRequestTypedDict(TypedDict): r"""id of the user you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Crm software.""" - + class RetrieveCrmUserRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the user you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Crm software.""" - diff --git a/src/panora_sdk/models/retrieveecommercecustomerop.py b/src/panora_sdk/models/retrieveecommercecustomerop.py index 1400b18..fc03c43 100644 --- a/src/panora_sdk/models/retrieveecommercecustomerop.py +++ b/src/panora_sdk/models/retrieveecommercecustomerop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveEcommerceCustomerRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveEcommerceCustomerRequestTypedDict(TypedDict): r"""id of the customer you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ats software.""" - + class RetrieveEcommerceCustomerRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the customer you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveecommercefulfillmentop.py b/src/panora_sdk/models/retrieveecommercefulfillmentop.py index 2fe9ec2..cdbaf26 100644 --- a/src/panora_sdk/models/retrieveecommercefulfillmentop.py +++ b/src/panora_sdk/models/retrieveecommercefulfillmentop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveEcommerceFulfillmentRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveEcommerceFulfillmentRequestTypedDict(TypedDict): r"""id of the fulfillment you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ats software.""" - + class RetrieveEcommerceFulfillmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the fulfillment you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveecommerceorderop.py b/src/panora_sdk/models/retrieveecommerceorderop.py index 9d210e8..4c20899 100644 --- a/src/panora_sdk/models/retrieveecommerceorderop.py +++ b/src/panora_sdk/models/retrieveecommerceorderop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveEcommerceOrderRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveEcommerceOrderRequestTypedDict(TypedDict): r"""id of the order you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ats software.""" - + class RetrieveEcommerceOrderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the order you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrieveecommerceproductop.py b/src/panora_sdk/models/retrieveecommerceproductop.py index f7f7136..1190ab1 100644 --- a/src/panora_sdk/models/retrieveecommerceproductop.py +++ b/src/panora_sdk/models/retrieveecommerceproductop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveEcommerceProductRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveEcommerceProductRequestTypedDict(TypedDict): r"""id of the product you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ats software.""" - + class RetrieveEcommerceProductRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the product you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ats software.""" - diff --git a/src/panora_sdk/models/retrievefilestoragefileop.py b/src/panora_sdk/models/retrievefilestoragefileop.py index 14d9917..8d3822f 100644 --- a/src/panora_sdk/models/retrievefilestoragefileop.py +++ b/src/panora_sdk/models/retrievefilestoragefileop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveFilestorageFileRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveFilestorageFileRequestTypedDict(TypedDict): r"""id of the file you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original File Storage software.""" - + class RetrieveFilestorageFileRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the file you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original File Storage software.""" - diff --git a/src/panora_sdk/models/retrievefilestoragefolderop.py b/src/panora_sdk/models/retrievefilestoragefolderop.py index 77db987..a30c99e 100644 --- a/src/panora_sdk/models/retrievefilestoragefolderop.py +++ b/src/panora_sdk/models/retrievefilestoragefolderop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveFilestorageFolderRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveFilestorageFolderRequestTypedDict(TypedDict): r"""id of the folder you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original File Storage software.""" - + class RetrieveFilestorageFolderRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the folder you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original File Storage software.""" - diff --git a/src/panora_sdk/models/retrievefilestoragegroupop.py b/src/panora_sdk/models/retrievefilestoragegroupop.py index f08652e..6ba2c5f 100644 --- a/src/panora_sdk/models/retrievefilestoragegroupop.py +++ b/src/panora_sdk/models/retrievefilestoragegroupop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveFilestorageGroupRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveFilestorageGroupRequestTypedDict(TypedDict): r"""id of the permission you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original File Storage software.""" - + class RetrieveFilestorageGroupRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the permission you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original File Storage software.""" - diff --git a/src/panora_sdk/models/retrievefilestorageuserop.py b/src/panora_sdk/models/retrievefilestorageuserop.py index 95436bd..0d3b0aa 100644 --- a/src/panora_sdk/models/retrievefilestorageuserop.py +++ b/src/panora_sdk/models/retrievefilestorageuserop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveFilestorageUserRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveFilestorageUserRequestTypedDict(TypedDict): r"""id of the permission you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original File Storage software.""" - + class RetrieveFilestorageUserRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the permission you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original File Storage software.""" - diff --git a/src/panora_sdk/models/retrievehrisbankinfoop.py b/src/panora_sdk/models/retrievehrisbankinfoop.py deleted file mode 100644 index 3bbdd0e..0000000 --- a/src/panora_sdk/models/retrievehrisbankinfoop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisBankInfoRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the bank info you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisBankInfoRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the bank info you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrisbenefitop.py b/src/panora_sdk/models/retrievehrisbenefitop.py deleted file mode 100644 index cf7c45f..0000000 --- a/src/panora_sdk/models/retrievehrisbenefitop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisBenefitRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the benefit you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisBenefitRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the benefit you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehriscompanyop.py b/src/panora_sdk/models/retrievehriscompanyop.py deleted file mode 100644 index 4074c70..0000000 --- a/src/panora_sdk/models/retrievehriscompanyop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisCompanyRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the company you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisCompanyRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the company you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrisdependentop.py b/src/panora_sdk/models/retrievehrisdependentop.py deleted file mode 100644 index 34e3629..0000000 --- a/src/panora_sdk/models/retrievehrisdependentop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisDependentRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the dependent you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisDependentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the dependent you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrisemployeeop.py b/src/panora_sdk/models/retrievehrisemployeeop.py deleted file mode 100644 index 6cef96e..0000000 --- a/src/panora_sdk/models/retrievehrisemployeeop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisEmployeeRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the employee you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisEmployeeRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the employee you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrisemployeepayrollrunop.py b/src/panora_sdk/models/retrievehrisemployeepayrollrunop.py deleted file mode 100644 index e79f6de..0000000 --- a/src/panora_sdk/models/retrievehrisemployeepayrollrunop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisEmployeePayrollRunRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the employeepayrollrun you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisEmployeePayrollRunRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the employeepayrollrun you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrisemployerbenefitop.py b/src/panora_sdk/models/retrievehrisemployerbenefitop.py deleted file mode 100644 index 082a95c..0000000 --- a/src/panora_sdk/models/retrievehrisemployerbenefitop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisEmployerBenefitRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the employer benefit you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisEmployerBenefitRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the employer benefit you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrisemploymentop.py b/src/panora_sdk/models/retrievehrisemploymentop.py deleted file mode 100644 index 7c13b23..0000000 --- a/src/panora_sdk/models/retrievehrisemploymentop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisEmploymentRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the employment you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisEmploymentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the employment you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrisgroupop.py b/src/panora_sdk/models/retrievehrisgroupop.py deleted file mode 100644 index 4a24a71..0000000 --- a/src/panora_sdk/models/retrievehrisgroupop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisGroupRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the group you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisGroupRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the group you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrislocationop.py b/src/panora_sdk/models/retrievehrislocationop.py deleted file mode 100644 index 0900e54..0000000 --- a/src/panora_sdk/models/retrievehrislocationop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisLocationRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the location you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisLocationRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the location you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrispaygroupop.py b/src/panora_sdk/models/retrievehrispaygroupop.py deleted file mode 100644 index b59b5b5..0000000 --- a/src/panora_sdk/models/retrievehrispaygroupop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisPaygroupRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the paygroup you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisPaygroupRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the paygroup you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehrispayrollrunop.py b/src/panora_sdk/models/retrievehrispayrollrunop.py deleted file mode 100644 index 338feee..0000000 --- a/src/panora_sdk/models/retrievehrispayrollrunop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisPayrollRunRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the payroll run you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisPayrollRunRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the payroll run you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehristimeoffbalanceop.py b/src/panora_sdk/models/retrievehristimeoffbalanceop.py deleted file mode 100644 index 64cd1ea..0000000 --- a/src/panora_sdk/models/retrievehristimeoffbalanceop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisTimeoffbalanceRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the timeoffbalance you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisTimeoffbalanceRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the timeoffbalance you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehristimeoffop.py b/src/panora_sdk/models/retrievehristimeoffop.py deleted file mode 100644 index 2d4400e..0000000 --- a/src/panora_sdk/models/retrievehristimeoffop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisTimeoffRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the time off you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisTimeoffRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the time off you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievehristimesheetentryop.py b/src/panora_sdk/models/retrievehristimesheetentryop.py deleted file mode 100644 index d4bb1d7..0000000 --- a/src/panora_sdk/models/retrievehristimesheetentryop.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata -import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired - - -class RetrieveHrisTimesheetentryRequestTypedDict(TypedDict): - x_connection_token: str - r"""The connection token""" - id: str - r"""id of the timesheetentry you want to retrieve.""" - remote_data: NotRequired[bool] - r"""Set to true to include data from the original Hris software.""" - - -class RetrieveHrisTimesheetentryRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] - r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - r"""id of the timesheetentry you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None - r"""Set to true to include data from the original Hris software.""" - diff --git a/src/panora_sdk/models/retrievelinkeduserop.py b/src/panora_sdk/models/retrievelinkeduserop.py index b330129..5f3db61 100644 --- a/src/panora_sdk/models/retrievelinkeduserop.py +++ b/src/panora_sdk/models/retrievelinkeduserop.py @@ -3,14 +3,14 @@ from __future__ import annotations from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, PathParamMetadata -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class RetrieveLinkedUserRequestTypedDict(TypedDict): id: str - + class RetrieveLinkedUserRequest(BaseModel): - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] diff --git a/src/panora_sdk/models/retrievemarketingautomationactionop.py b/src/panora_sdk/models/retrievemarketingautomationactionop.py index a538ff3..cde6914 100644 --- a/src/panora_sdk/models/retrievemarketingautomationactionop.py +++ b/src/panora_sdk/models/retrievemarketingautomationactionop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationActionRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationActionRequestTypedDict(TypedDict): r"""id of the action you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationActionRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the action you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationautomationop.py b/src/panora_sdk/models/retrievemarketingautomationautomationop.py index 22be321..8506ff9 100644 --- a/src/panora_sdk/models/retrievemarketingautomationautomationop.py +++ b/src/panora_sdk/models/retrievemarketingautomationautomationop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationAutomationRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationAutomationRequestTypedDict(TypedDict): r"""id of the automation you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationAutomationRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the automation you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationcampaignop.py b/src/panora_sdk/models/retrievemarketingautomationcampaignop.py index 1d9387e..8069947 100644 --- a/src/panora_sdk/models/retrievemarketingautomationcampaignop.py +++ b/src/panora_sdk/models/retrievemarketingautomationcampaignop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationCampaignRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationCampaignRequestTypedDict(TypedDict): r"""id of the campaign you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationCampaignRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the campaign you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationcontactop.py b/src/panora_sdk/models/retrievemarketingautomationcontactop.py index 4b160a2..8063dfa 100644 --- a/src/panora_sdk/models/retrievemarketingautomationcontactop.py +++ b/src/panora_sdk/models/retrievemarketingautomationcontactop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingAutomationContactRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingAutomationContactRequestTypedDict(TypedDict): r"""id of the contact you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingAutomationContactRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the contact you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationemailop.py b/src/panora_sdk/models/retrievemarketingautomationemailop.py index af7df01..0589230 100644 --- a/src/panora_sdk/models/retrievemarketingautomationemailop.py +++ b/src/panora_sdk/models/retrievemarketingautomationemailop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationEmailRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationEmailRequestTypedDict(TypedDict): r"""id of the email you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationEmailRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the email you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationeventop.py b/src/panora_sdk/models/retrievemarketingautomationeventop.py index 0591cf0..03b7a50 100644 --- a/src/panora_sdk/models/retrievemarketingautomationeventop.py +++ b/src/panora_sdk/models/retrievemarketingautomationeventop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationEventRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationEventRequestTypedDict(TypedDict): r"""id of the event you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationEventRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the event you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationlistop.py b/src/panora_sdk/models/retrievemarketingautomationlistop.py index 3887929..8f41049 100644 --- a/src/panora_sdk/models/retrievemarketingautomationlistop.py +++ b/src/panora_sdk/models/retrievemarketingautomationlistop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationListRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationListRequestTypedDict(TypedDict): r"""id of the list you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationListRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the list you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationmessageop.py b/src/panora_sdk/models/retrievemarketingautomationmessageop.py index 4c42f4c..c5a7fc3 100644 --- a/src/panora_sdk/models/retrievemarketingautomationmessageop.py +++ b/src/panora_sdk/models/retrievemarketingautomationmessageop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationMessageRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationMessageRequestTypedDict(TypedDict): r"""id of the message you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationMessageRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the message you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationtemplateop.py b/src/panora_sdk/models/retrievemarketingautomationtemplateop.py index 7bfa9be..4575aa8 100644 --- a/src/panora_sdk/models/retrievemarketingautomationtemplateop.py +++ b/src/panora_sdk/models/retrievemarketingautomationtemplateop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingautomationTemplateRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingautomationTemplateRequestTypedDict(TypedDict): r"""id of the template you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingautomationTemplateRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the template you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrievemarketingautomationuserop.py b/src/panora_sdk/models/retrievemarketingautomationuserop.py index 27700b6..039c10d 100644 --- a/src/panora_sdk/models/retrievemarketingautomationuserop.py +++ b/src/panora_sdk/models/retrievemarketingautomationuserop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveMarketingAutomationUserRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveMarketingAutomationUserRequestTypedDict(TypedDict): r"""id of the user you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Marketingautomation software.""" - + class RetrieveMarketingAutomationUserRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the user you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Marketingautomation software.""" - diff --git a/src/panora_sdk/models/retrieveticketingaccountop.py b/src/panora_sdk/models/retrieveticketingaccountop.py index f9e6b6e..6a6f1a4 100644 --- a/src/panora_sdk/models/retrieveticketingaccountop.py +++ b/src/panora_sdk/models/retrieveticketingaccountop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingAccountRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveTicketingAccountRequestTypedDict(TypedDict): r"""id of the account you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingAccountRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the account you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/retrieveticketingattachmentop.py b/src/panora_sdk/models/retrieveticketingattachmentop.py index ba2a304..001c208 100644 --- a/src/panora_sdk/models/retrieveticketingattachmentop.py +++ b/src/panora_sdk/models/retrieveticketingattachmentop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingAttachmentRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveTicketingAttachmentRequestTypedDict(TypedDict): r"""id of the attachment you want to retrive.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingAttachmentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the attachment you want to retrive.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/retrieveticketingcommentop.py b/src/panora_sdk/models/retrieveticketingcommentop.py index d569db4..a54b673 100644 --- a/src/panora_sdk/models/retrieveticketingcommentop.py +++ b/src/panora_sdk/models/retrieveticketingcommentop.py @@ -1,13 +1,21 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingcommentoutput import UnifiedTicketingCommentOutput, UnifiedTicketingCommentOutputTypedDict +from .unifiedticketingcommentoutput import ( + UnifiedTicketingCommentOutput, + UnifiedTicketingCommentOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingCommentRequestTypedDict(TypedDict): @@ -17,28 +25,41 @@ class RetrieveTicketingCommentRequestTypedDict(TypedDict): r"""id of the `comment` you want to retrive.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingCommentRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the `comment` you want to retrive.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingCommentResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingCommentOutputTypedDict] - + class RetrieveTicketingCommentResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingCommentOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -52,21 +73,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/retrieveticketingcontactop.py b/src/panora_sdk/models/retrieveticketingcontactop.py index eda0c40..998e179 100644 --- a/src/panora_sdk/models/retrieveticketingcontactop.py +++ b/src/panora_sdk/models/retrieveticketingcontactop.py @@ -1,13 +1,21 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingcontactoutput import UnifiedTicketingContactOutput, UnifiedTicketingContactOutputTypedDict +from .unifiedticketingcontactoutput import ( + UnifiedTicketingContactOutput, + UnifiedTicketingContactOutputTypedDict, +) from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingContactRequestTypedDict(TypedDict): @@ -17,28 +25,41 @@ class RetrieveTicketingContactRequestTypedDict(TypedDict): r"""id of the contact you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingContactRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the contact you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingContactResponseBodyTypedDict(TypedDict): prev_cursor: Nullable[str] next_cursor: Nullable[str] data: List[UnifiedTicketingContactOutputTypedDict] - + class RetrieveTicketingContactResponseBody(BaseModel): prev_cursor: Nullable[str] + next_cursor: Nullable[str] + data: List[UnifiedTicketingContactOutput] - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -52,21 +73,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/retrieveticketingtagop.py b/src/panora_sdk/models/retrieveticketingtagop.py index 451e2a9..631f2d1 100644 --- a/src/panora_sdk/models/retrieveticketingtagop.py +++ b/src/panora_sdk/models/retrieveticketingtagop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingTagRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveTicketingTagRequestTypedDict(TypedDict): r"""id of the tag you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingTagRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the tag you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/retrieveticketingteamop.py b/src/panora_sdk/models/retrieveticketingteamop.py index 9aff23f..117c976 100644 --- a/src/panora_sdk/models/retrieveticketingteamop.py +++ b/src/panora_sdk/models/retrieveticketingteamop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingTeamRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveTicketingTeamRequestTypedDict(TypedDict): r"""id of the team you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingTeamRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the team you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/retrieveticketingticketop.py b/src/panora_sdk/models/retrieveticketingticketop.py index fc550a4..b8c5af5 100644 --- a/src/panora_sdk/models/retrieveticketingticketop.py +++ b/src/panora_sdk/models/retrieveticketingticketop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingTicketRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveTicketingTicketRequestTypedDict(TypedDict): r"""id of the `ticket` you want to retrive.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingTicketRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the `ticket` you want to retrive.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/retrieveticketinguserop.py b/src/panora_sdk/models/retrieveticketinguserop.py index f48b71a..013a02d 100644 --- a/src/panora_sdk/models/retrieveticketinguserop.py +++ b/src/panora_sdk/models/retrieveticketinguserop.py @@ -2,10 +2,15 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from panora_sdk.utils import FieldMetadata, HeaderMetadata, PathParamMetadata, QueryParamMetadata +from panora_sdk.utils import ( + FieldMetadata, + HeaderMetadata, + PathParamMetadata, + QueryParamMetadata, +) import pydantic -from typing import Optional, TypedDict -from typing_extensions import Annotated, NotRequired +from typing import Optional +from typing_extensions import Annotated, NotRequired, TypedDict class RetrieveTicketingUserRequestTypedDict(TypedDict): @@ -15,13 +20,23 @@ class RetrieveTicketingUserRequestTypedDict(TypedDict): r"""id of the user you want to retrieve.""" remote_data: NotRequired[bool] r"""Set to true to include data from the original Ticketing software.""" - + class RetrieveTicketingUserRequest(BaseModel): - x_connection_token: Annotated[str, pydantic.Field(alias="x-connection-token"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] + x_connection_token: Annotated[ + str, + pydantic.Field(alias="x-connection-token"), + FieldMetadata(header=HeaderMetadata(style="simple", explode=False)), + ] r"""The connection token""" - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the user you want to retrieve.""" - remote_data: Annotated[Optional[bool], FieldMetadata(query=QueryParamMetadata(style="form", explode=True))] = None + + remote_data: Annotated[ + Optional[bool], + FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), + ] = None r"""Set to true to include data from the original Ticketing software.""" - diff --git a/src/panora_sdk/models/security.py b/src/panora_sdk/models/security.py index b5e20d6..f362bae 100644 --- a/src/panora_sdk/models/security.py +++ b/src/panora_sdk/models/security.py @@ -3,14 +3,22 @@ from __future__ import annotations from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, SecurityMetadata -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class SecurityTypedDict(TypedDict): api_key: str - + class Security(BaseModel): - api_key: Annotated[str, FieldMetadata(security=SecurityMetadata(scheme=True, scheme_type="apiKey", sub_type="header", field_name="x-api-key"))] - + api_key: Annotated[ + str, + FieldMetadata( + security=SecurityMetadata( + scheme=True, + scheme_type="apiKey", + sub_type="header", + field_name="x-api-key", + ) + ), + ] diff --git a/src/panora_sdk/models/signatureverificationdto.py b/src/panora_sdk/models/signatureverificationdto.py index 0449b9e..d44db6b 100644 --- a/src/panora_sdk/models/signatureverificationdto.py +++ b/src/panora_sdk/models/signatureverificationdto.py @@ -3,7 +3,8 @@ from __future__ import annotations from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import Any, Dict, TypedDict +from typing import Any, Dict +from typing_extensions import TypedDict class SignatureVerificationDtoTypedDict(TypedDict): @@ -13,16 +14,18 @@ class SignatureVerificationDtoTypedDict(TypedDict): r"""The signature of the webhook.""" secret: Nullable[str] r"""The secret of the webhook.""" - + class SignatureVerificationDto(BaseModel): payload: Nullable[Dict[str, Any]] r"""The payload event of the webhook.""" + signature: Nullable[str] r"""The signature of the webhook.""" + secret: Nullable[str] r"""The secret of the webhook.""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] @@ -36,21 +39,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/statusop.py b/src/panora_sdk/models/statusop.py index 44c7c44..21a155b 100644 --- a/src/panora_sdk/models/statusop.py +++ b/src/panora_sdk/models/statusop.py @@ -4,8 +4,7 @@ from enum import Enum from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, PathParamMetadata -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class PathParamVertical(str, Enum): @@ -13,15 +12,16 @@ class PathParamVertical(str, Enum): MARKETINGAUTOMATION = "marketingautomation" CRM = "crm" FILESTORAGE = "filestorage" - ATS = "ats" - HRIS = "hris" ACCOUNTING = "accounting" ECOMMERCE = "ecommerce" + class StatusRequestTypedDict(TypedDict): vertical: PathParamVertical - + class StatusRequest(BaseModel): - vertical: Annotated[PathParamVertical, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] - + vertical: Annotated[ + PathParamVertical, + FieldMetadata(path=PathParamMetadata(style="simple", explode=False)), + ] diff --git a/src/panora_sdk/models/taxitem.py b/src/panora_sdk/models/taxitem.py deleted file mode 100644 index 86a9c03..0000000 --- a/src/panora_sdk/models/taxitem.py +++ /dev/null @@ -1,57 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class TaxItemTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the tax""" - amount: NotRequired[Nullable[float]] - r"""The amount of the tax""" - employer_tax: NotRequired[Nullable[bool]] - r"""Indicates if this is an employer tax""" - - -class TaxItem(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the tax""" - amount: OptionalNullable[float] = UNSET - r"""The amount of the tax""" - employer_tax: OptionalNullable[bool] = UNSET - r"""Indicates if this is an employer tax""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "amount", "employer_tax"] - nullable_fields = ["name", "amount", "employer_tax"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedaccountingaccountinput.py b/src/panora_sdk/models/unifiedaccountingaccountinput.py index 0258a81..015be30 100644 --- a/src/panora_sdk/models/unifiedaccountingaccountinput.py +++ b/src/panora_sdk/models/unifiedaccountingaccountinput.py @@ -1,21 +1,24 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingAccountInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAccountInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAccountInputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -38,38 +41,74 @@ class UnifiedAccountingAccountInputTypedDict(TypedDict): r"""The UUID of the parent account""" company_info_id: NotRequired[Nullable[str]] r"""The UUID of the associated company info""" - field_mappings: NotRequired[Nullable[UnifiedAccountingAccountInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingAccountInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingAccountInput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the account""" + description: OptionalNullable[str] = UNSET r"""A description of the account""" + classification: OptionalNullable[str] = UNSET r"""The classification of the account""" + type: OptionalNullable[str] = UNSET r"""The type of the account""" + status: OptionalNullable[str] = UNSET r"""The status of the account""" + current_balance: OptionalNullable[float] = UNSET r"""The current balance of the account""" + currency: OptionalNullable[str] = UNSET r"""The currency of the account""" + account_number: OptionalNullable[str] = UNSET r"""The account number""" + parent_account: OptionalNullable[str] = UNSET r"""The UUID of the parent account""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + field_mappings: OptionalNullable[UnifiedAccountingAccountInputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "description", "classification", "type", "status", "current_balance", "currency", "account_number", "parent_account", "company_info_id", "field_mappings"] - nullable_fields = ["name", "description", "classification", "type", "status", "current_balance", "currency", "account_number", "parent_account", "company_info_id", "field_mappings"] + optional_fields = [ + "name", + "description", + "classification", + "type", + "status", + "current_balance", + "currency", + "account_number", + "parent_account", + "company_info_id", + "field_mappings", + ] + nullable_fields = [ + "name", + "description", + "classification", + "type", + "status", + "current_balance", + "currency", + "account_number", + "parent_account", + "company_info_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -79,21 +118,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingaccountoutput.py b/src/panora_sdk/models/unifiedaccountingaccountoutput.py index 6357c0f..2e37813 100644 --- a/src/panora_sdk/models/unifiedaccountingaccountoutput.py +++ b/src/panora_sdk/models/unifiedaccountingaccountoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict -class UnifiedAccountingAccountOutputFieldMappingsTypedDict(TypedDict): +class FieldMappingsModelTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedAccountingAccountOutputFieldMappings(BaseModel): + +class FieldMappingsModel(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedAccountingAccountOutputRemoteDataTypedDict(TypedDict): + +class RemoteDataTypedDict(TypedDict): r"""The remote data of the account in the context of the 3rd Party""" - - -class UnifiedAccountingAccountOutputRemoteData(BaseModel): + +class RemoteData(BaseModel): r"""The remote data of the account in the context of the 3rd Party""" - - + class UnifiedAccountingAccountOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -49,58 +50,107 @@ class UnifiedAccountingAccountOutputTypedDict(TypedDict): r"""The UUID of the parent account""" company_info_id: NotRequired[Nullable[str]] r"""The UUID of the associated company info""" - field_mappings: NotRequired[Nullable[UnifiedAccountingAccountOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[Nullable[FieldMappingsModelTypedDict]] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the account record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the account in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingAccountOutputRemoteDataTypedDict]] + remote_data: NotRequired[Nullable[RemoteDataTypedDict]] r"""The remote data of the account in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the account record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the account record""" - + class UnifiedAccountingAccountOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the account""" + description: OptionalNullable[str] = UNSET r"""A description of the account""" + classification: OptionalNullable[str] = UNSET r"""The classification of the account""" + type: OptionalNullable[str] = UNSET r"""The type of the account""" + status: OptionalNullable[str] = UNSET r"""The status of the account""" + current_balance: OptionalNullable[float] = UNSET r"""The current balance of the account""" + currency: OptionalNullable[str] = UNSET r"""The currency of the account""" + account_number: OptionalNullable[str] = UNSET r"""The account number""" + parent_account: OptionalNullable[str] = UNSET r"""The UUID of the parent account""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" - field_mappings: OptionalNullable[UnifiedAccountingAccountOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[FieldMappingsModel] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the account record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the account in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedAccountingAccountOutputRemoteData] = UNSET + + remote_data: OptionalNullable[RemoteData] = UNSET r"""The remote data of the account in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the account record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the account record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "description", "classification", "type", "status", "current_balance", "currency", "account_number", "parent_account", "company_info_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "description", "classification", "type", "status", "current_balance", "currency", "account_number", "parent_account", "company_info_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "name", + "description", + "classification", + "type", + "status", + "current_balance", + "currency", + "account_number", + "parent_account", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "description", + "classification", + "type", + "status", + "current_balance", + "currency", + "account_number", + "parent_account", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -110,21 +160,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingaddressoutput.py b/src/panora_sdk/models/unifiedaccountingaddressoutput.py index bd44f76..f23398a 100644 --- a/src/panora_sdk/models/unifiedaccountingaddressoutput.py +++ b/src/panora_sdk/models/unifiedaccountingaddressoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingAddressOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAddressOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAddressOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the address in the context of the 3rd Party""" - - + class UnifiedAccountingAddressOutputRemoteData(BaseModel): r"""The remote data of the address in the context of the 3rd Party""" - - + class UnifiedAccountingAddressOutputTypedDict(TypedDict): type: NotRequired[Nullable[str]] @@ -49,58 +50,113 @@ class UnifiedAccountingAddressOutputTypedDict(TypedDict): r"""The UUID of the associated contact""" company_info_id: NotRequired[Nullable[str]] r"""The UUID of the associated company info""" - field_mappings: NotRequired[Nullable[UnifiedAccountingAddressOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingAddressOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the address record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the address in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingAddressOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingAddressOutputRemoteDataTypedDict] + ] r"""The remote data of the address in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the address record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the address record""" - + class UnifiedAccountingAddressOutput(BaseModel): type: OptionalNullable[str] = UNSET r"""The type of the address""" + street_1: OptionalNullable[str] = UNSET r"""The first line of the street address""" + street_2: OptionalNullable[str] = UNSET r"""The second line of the street address""" + city: OptionalNullable[str] = UNSET r"""The city of the address""" + state: OptionalNullable[str] = UNSET r"""The state of the address""" + country_subdivision: OptionalNullable[str] = UNSET r"""The country subdivision (e.g., province or state) of the address""" + country: OptionalNullable[str] = UNSET r"""The country of the address""" + zip: OptionalNullable[str] = UNSET r"""The zip or postal code of the address""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" - field_mappings: OptionalNullable[UnifiedAccountingAddressOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingAddressOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the address record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the address in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingAddressOutputRemoteData] = UNSET r"""The remote data of the address in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the address record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the address record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["type", "street_1", "street_2", "city", "state", "country_subdivision", "country", "zip", "contact_id", "company_info_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["type", "street_1", "street_2", "city", "state", "country_subdivision", "country", "zip", "contact_id", "company_info_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "type", + "street_1", + "street_2", + "city", + "state", + "country_subdivision", + "country", + "zip", + "contact_id", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "type", + "street_1", + "street_2", + "city", + "state", + "country_subdivision", + "country", + "zip", + "contact_id", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -110,21 +166,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingattachmentinput.py b/src/panora_sdk/models/unifiedaccountingattachmentinput.py index 28672a1..edb0c22 100644 --- a/src/panora_sdk/models/unifiedaccountingattachmentinput.py +++ b/src/panora_sdk/models/unifiedaccountingattachmentinput.py @@ -1,21 +1,24 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingAttachmentInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAttachmentInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAttachmentInputTypedDict(TypedDict): file_name: NotRequired[Nullable[str]] @@ -24,20 +27,27 @@ class UnifiedAccountingAttachmentInputTypedDict(TypedDict): r"""The URL where the file can be accessed""" account_id: NotRequired[Nullable[str]] r"""The UUID of the associated account""" - field_mappings: NotRequired[Nullable[UnifiedAccountingAttachmentInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingAttachmentInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingAttachmentInput(BaseModel): file_name: OptionalNullable[str] = UNSET r"""The name of the attached file""" + file_url: OptionalNullable[str] = UNSET r"""The URL where the file can be accessed""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the associated account""" - field_mappings: OptionalNullable[UnifiedAccountingAttachmentInputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingAttachmentInputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["file_name", "file_url", "account_id", "field_mappings"] @@ -51,21 +61,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingattachmentoutput.py b/src/panora_sdk/models/unifiedaccountingattachmentoutput.py index 0d6ed09..9708475 100644 --- a/src/panora_sdk/models/unifiedaccountingattachmentoutput.py +++ b/src/panora_sdk/models/unifiedaccountingattachmentoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingAttachmentOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAttachmentOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingAttachmentOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the attachment in the context of the 3rd Party""" - - + class UnifiedAccountingAttachmentOutputRemoteData(BaseModel): r"""The remote data of the attachment in the context of the 3rd Party""" - - + class UnifiedAccountingAttachmentOutputTypedDict(TypedDict): file_name: NotRequired[Nullable[str]] @@ -35,44 +36,78 @@ class UnifiedAccountingAttachmentOutputTypedDict(TypedDict): r"""The URL where the file can be accessed""" account_id: NotRequired[Nullable[str]] r"""The UUID of the associated account""" - field_mappings: NotRequired[Nullable[UnifiedAccountingAttachmentOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingAttachmentOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the attachment record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the attachment in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingAttachmentOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingAttachmentOutputRemoteDataTypedDict] + ] r"""The remote data of the attachment in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the attachment record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the attachment record""" - + class UnifiedAccountingAttachmentOutput(BaseModel): file_name: OptionalNullable[str] = UNSET r"""The name of the attached file""" + file_url: OptionalNullable[str] = UNSET r"""The URL where the file can be accessed""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the associated account""" - field_mappings: OptionalNullable[UnifiedAccountingAttachmentOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingAttachmentOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the attachment record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the attachment in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingAttachmentOutputRemoteData] = UNSET r"""The remote data of the attachment in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the attachment record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the attachment record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["file_name", "file_url", "account_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["file_name", "file_url", "account_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "file_name", + "file_url", + "account_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "file_name", + "file_url", + "account_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -82,21 +117,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingbalancesheetoutput.py b/src/panora_sdk/models/unifiedaccountingbalancesheetoutput.py index 53e199c..846faae 100644 --- a/src/panora_sdk/models/unifiedaccountingbalancesheetoutput.py +++ b/src/panora_sdk/models/unifiedaccountingbalancesheetoutput.py @@ -3,31 +3,34 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +import pydantic from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import Annotated, NotRequired, TypedDict class UnifiedAccountingBalancesheetOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingBalancesheetOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingBalancesheetOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the balance sheet in the context of the 3rd Party""" - - + class UnifiedAccountingBalancesheetOutputRemoteData(BaseModel): r"""The remote data of the balance sheet in the context of the 3rd Party""" - - + class UnifiedAccountingBalancesheetOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -36,7 +39,7 @@ class UnifiedAccountingBalancesheetOutputTypedDict(TypedDict): r"""The currency used in the balance sheet""" company_info_id: NotRequired[Nullable[str]] r"""The UUID of the associated company info""" - date: NotRequired[Nullable[datetime]] + date_: NotRequired[Nullable[datetime]] r"""The date of the balance sheet""" net_assets: NotRequired[Nullable[float]] r"""The net assets value""" @@ -50,58 +53,112 @@ class UnifiedAccountingBalancesheetOutputTypedDict(TypedDict): r"""The date when the balance sheet was generated in the remote system""" line_items: NotRequired[List[LineItemTypedDict]] r"""The report items associated with this balance sheet""" - field_mappings: NotRequired[Nullable[UnifiedAccountingBalancesheetOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingBalancesheetOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the balance sheet record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the balance sheet in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingBalancesheetOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingBalancesheetOutputRemoteDataTypedDict] + ] r"""The remote data of the balance sheet in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the balance sheet record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the balance sheet record""" - + class UnifiedAccountingBalancesheetOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the balance sheet""" + currency: OptionalNullable[str] = UNSET r"""The currency used in the balance sheet""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" - date: OptionalNullable[datetime] = UNSET + + date_: Annotated[OptionalNullable[datetime], pydantic.Field(alias="date")] = UNSET r"""The date of the balance sheet""" + net_assets: OptionalNullable[float] = UNSET r"""The net assets value""" + assets: OptionalNullable[List[str]] = UNSET r"""The list of assets""" + liabilities: OptionalNullable[List[str]] = UNSET r"""The list of liabilities""" + equity: OptionalNullable[List[str]] = UNSET r"""The list of equity items""" + remote_generated_at: OptionalNullable[datetime] = UNSET r"""The date when the balance sheet was generated in the remote system""" + line_items: Optional[List[LineItem]] = None r"""The report items associated with this balance sheet""" - field_mappings: OptionalNullable[UnifiedAccountingBalancesheetOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingBalancesheetOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the balance sheet record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the balance sheet in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingBalancesheetOutputRemoteData] = UNSET r"""The remote data of the balance sheet in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the balance sheet record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the balance sheet record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "currency", "company_info_id", "date", "net_assets", "assets", "liabilities", "equity", "remote_generated_at", "line_items", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "currency", "company_info_id", "date", "net_assets", "assets", "liabilities", "equity", "remote_generated_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "name", + "currency", + "company_info_id", + "date", + "net_assets", + "assets", + "liabilities", + "equity", + "remote_generated_at", + "line_items", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "currency", + "company_info_id", + "date", + "net_assets", + "assets", + "liabilities", + "equity", + "remote_generated_at", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -111,21 +168,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingcashflowstatementoutput.py b/src/panora_sdk/models/unifiedaccountingcashflowstatementoutput.py index 21e3840..4f8f704 100644 --- a/src/panora_sdk/models/unifiedaccountingcashflowstatementoutput.py +++ b/src/panora_sdk/models/unifiedaccountingcashflowstatementoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingCashflowstatementOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingCashflowstatementOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingCashflowstatementOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the cash flow statement in the context of the 3rd Party""" - - + class UnifiedAccountingCashflowstatementOutputRemoteData(BaseModel): r"""The remote data of the cash flow statement in the context of the 3rd Party""" - - + class UnifiedAccountingCashflowstatementOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -48,56 +50,109 @@ class UnifiedAccountingCashflowstatementOutputTypedDict(TypedDict): r"""The date when the cash flow statement was generated in the remote system""" line_items: NotRequired[List[LineItemTypedDict]] r"""The report items associated with this cash flow statement""" - field_mappings: NotRequired[Nullable[UnifiedAccountingCashflowstatementOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingCashflowstatementOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the cash flow statement record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the cash flow statement in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingCashflowstatementOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingCashflowstatementOutputRemoteDataTypedDict] + ] r"""The remote data of the cash flow statement in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the cash flow statement record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the cash flow statement record""" - + class UnifiedAccountingCashflowstatementOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the cash flow statement""" + currency: OptionalNullable[str] = UNSET r"""The currency used in the cash flow statement""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company""" + start_period: OptionalNullable[datetime] = UNSET r"""The start date of the period covered by the cash flow statement""" + end_period: OptionalNullable[datetime] = UNSET r"""The end date of the period covered by the cash flow statement""" + cash_at_beginning_of_period: OptionalNullable[float] = UNSET r"""The cash balance at the beginning of the period""" + cash_at_end_of_period: OptionalNullable[float] = UNSET r"""The cash balance at the end of the period""" + remote_generated_at: OptionalNullable[datetime] = UNSET r"""The date when the cash flow statement was generated in the remote system""" + line_items: Optional[List[LineItem]] = None r"""The report items associated with this cash flow statement""" - field_mappings: OptionalNullable[UnifiedAccountingCashflowstatementOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingCashflowstatementOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the cash flow statement record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the cash flow statement in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedAccountingCashflowstatementOutputRemoteData] = UNSET + + remote_data: OptionalNullable[ + UnifiedAccountingCashflowstatementOutputRemoteData + ] = UNSET r"""The remote data of the cash flow statement in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the cash flow statement record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the cash flow statement record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "currency", "company_id", "start_period", "end_period", "cash_at_beginning_of_period", "cash_at_end_of_period", "remote_generated_at", "line_items", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "currency", "company_id", "start_period", "end_period", "cash_at_beginning_of_period", "cash_at_end_of_period", "remote_generated_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "name", + "currency", + "company_id", + "start_period", + "end_period", + "cash_at_beginning_of_period", + "cash_at_end_of_period", + "remote_generated_at", + "line_items", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "currency", + "company_id", + "start_period", + "end_period", + "cash_at_beginning_of_period", + "cash_at_end_of_period", + "remote_generated_at", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -107,21 +162,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingcompanyinfooutput.py b/src/panora_sdk/models/unifiedaccountingcompanyinfooutput.py index 74d2c7b..6a6d7c7 100644 --- a/src/panora_sdk/models/unifiedaccountingcompanyinfooutput.py +++ b/src/panora_sdk/models/unifiedaccountingcompanyinfooutput.py @@ -2,31 +2,33 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired +from typing import List +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingCompanyinfoOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingCompanyinfoOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingCompanyinfoOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the company info in the context of the 3rd Party""" - - + class UnifiedAccountingCompanyinfoOutputRemoteData(BaseModel): r"""The remote data of the company info in the context of the 3rd Party""" - - + class UnifiedAccountingCompanyinfoOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -45,13 +47,17 @@ class UnifiedAccountingCompanyinfoOutputTypedDict(TypedDict): r"""The URLs associated with the company""" tracking_categories: NotRequired[Nullable[List[str]]] r"""The UUIDs of the tracking categories used by the company""" - field_mappings: NotRequired[Nullable[UnifiedAccountingCompanyinfoOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingCompanyinfoOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the company info record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the company info in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingCompanyinfoOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingCompanyinfoOutputRemoteDataTypedDict] + ] r"""The remote data of the company info in the context of the 3rd Party""" remote_created_at: NotRequired[Nullable[datetime]] r"""The date when the company info was created in the remote system""" @@ -59,44 +65,92 @@ class UnifiedAccountingCompanyinfoOutputTypedDict(TypedDict): r"""The created date of the company info record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the company info record""" - + class UnifiedAccountingCompanyinfoOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the company""" + legal_name: OptionalNullable[str] = UNSET r"""The legal name of the company""" + tax_number: OptionalNullable[str] = UNSET r"""The tax number of the company""" + fiscal_year_end_month: OptionalNullable[float] = UNSET r"""The month of the fiscal year end (1-12)""" + fiscal_year_end_day: OptionalNullable[float] = UNSET r"""The day of the fiscal year end (1-31)""" + currency: OptionalNullable[str] = UNSET r"""The currency used by the company""" + urls: OptionalNullable[List[str]] = UNSET r"""The URLs associated with the company""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories used by the company""" - field_mappings: OptionalNullable[UnifiedAccountingCompanyinfoOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingCompanyinfoOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the company info record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the company info in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingCompanyinfoOutputRemoteData] = UNSET r"""The remote data of the company info in the context of the 3rd Party""" + remote_created_at: OptionalNullable[datetime] = UNSET r"""The date when the company info was created in the remote system""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the company info record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the company info record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "legal_name", "tax_number", "fiscal_year_end_month", "fiscal_year_end_day", "currency", "urls", "tracking_categories", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at"] - nullable_fields = ["name", "legal_name", "tax_number", "fiscal_year_end_month", "fiscal_year_end_day", "currency", "urls", "tracking_categories", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at"] + optional_fields = [ + "name", + "legal_name", + "tax_number", + "fiscal_year_end_month", + "fiscal_year_end_day", + "currency", + "urls", + "tracking_categories", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_created_at", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "legal_name", + "tax_number", + "fiscal_year_end_month", + "fiscal_year_end_day", + "currency", + "urls", + "tracking_categories", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_created_at", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -106,21 +160,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingcontactinput.py b/src/panora_sdk/models/unifiedaccountingcontactinput.py index 9612545..76c2de3 100644 --- a/src/panora_sdk/models/unifiedaccountingcontactinput.py +++ b/src/panora_sdk/models/unifiedaccountingcontactinput.py @@ -1,21 +1,24 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingContactInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingContactInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingContactInputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -36,36 +39,69 @@ class UnifiedAccountingContactInputTypedDict(TypedDict): r"""The date when the contact was last updated in the remote system""" company_info_id: NotRequired[Nullable[str]] r"""The UUID of the associated company info""" - field_mappings: NotRequired[Nullable[UnifiedAccountingContactInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingContactInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingContactInput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the contact""" + is_supplier: OptionalNullable[bool] = UNSET r"""Indicates if the contact is a supplier""" + is_customer: OptionalNullable[bool] = UNSET r"""Indicates if the contact is a customer""" + email_address: OptionalNullable[str] = UNSET r"""The email address of the contact""" + tax_number: OptionalNullable[str] = UNSET r"""The tax number of the contact""" + status: OptionalNullable[str] = UNSET r"""The status of the contact""" + currency: OptionalNullable[str] = UNSET r"""The currency associated with the contact""" + remote_updated_at: OptionalNullable[str] = UNSET r"""The date when the contact was last updated in the remote system""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + field_mappings: OptionalNullable[UnifiedAccountingContactInputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "is_supplier", "is_customer", "email_address", "tax_number", "status", "currency", "remote_updated_at", "company_info_id", "field_mappings"] - nullable_fields = ["name", "is_supplier", "is_customer", "email_address", "tax_number", "status", "currency", "remote_updated_at", "company_info_id", "field_mappings"] + optional_fields = [ + "name", + "is_supplier", + "is_customer", + "email_address", + "tax_number", + "status", + "currency", + "remote_updated_at", + "company_info_id", + "field_mappings", + ] + nullable_fields = [ + "name", + "is_supplier", + "is_customer", + "email_address", + "tax_number", + "status", + "currency", + "remote_updated_at", + "company_info_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -75,21 +111,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingcontactoutput.py b/src/panora_sdk/models/unifiedaccountingcontactoutput.py index 0b51a08..e4d719e 100644 --- a/src/panora_sdk/models/unifiedaccountingcontactoutput.py +++ b/src/panora_sdk/models/unifiedaccountingcontactoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingContactOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingContactOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingContactOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the contact in the context of the 3rd Party""" - - + class UnifiedAccountingContactOutputRemoteData(BaseModel): r"""The remote data of the contact in the context of the 3rd Party""" - - + class UnifiedAccountingContactOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -47,56 +48,108 @@ class UnifiedAccountingContactOutputTypedDict(TypedDict): r"""The date when the contact was last updated in the remote system""" company_info_id: NotRequired[Nullable[str]] r"""The UUID of the associated company info""" - field_mappings: NotRequired[Nullable[UnifiedAccountingContactOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingContactOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the contact record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the contact in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingContactOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingContactOutputRemoteDataTypedDict] + ] r"""The remote data of the contact in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the contact record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the contact record""" - + class UnifiedAccountingContactOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the contact""" + is_supplier: OptionalNullable[bool] = UNSET r"""Indicates if the contact is a supplier""" + is_customer: OptionalNullable[bool] = UNSET r"""Indicates if the contact is a customer""" + email_address: OptionalNullable[str] = UNSET r"""The email address of the contact""" + tax_number: OptionalNullable[str] = UNSET r"""The tax number of the contact""" + status: OptionalNullable[str] = UNSET r"""The status of the contact""" + currency: OptionalNullable[str] = UNSET r"""The currency associated with the contact""" + remote_updated_at: OptionalNullable[str] = UNSET r"""The date when the contact was last updated in the remote system""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" - field_mappings: OptionalNullable[UnifiedAccountingContactOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingContactOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the contact record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the contact in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingContactOutputRemoteData] = UNSET r"""The remote data of the contact in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the contact record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the contact record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "is_supplier", "is_customer", "email_address", "tax_number", "status", "currency", "remote_updated_at", "company_info_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "is_supplier", "is_customer", "email_address", "tax_number", "status", "currency", "remote_updated_at", "company_info_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "name", + "is_supplier", + "is_customer", + "email_address", + "tax_number", + "status", + "currency", + "remote_updated_at", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "is_supplier", + "is_customer", + "email_address", + "tax_number", + "status", + "currency", + "remote_updated_at", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -106,21 +159,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingcreditnoteoutput.py b/src/panora_sdk/models/unifiedaccountingcreditnoteoutput.py index 784f4f5..30e04f8 100644 --- a/src/panora_sdk/models/unifiedaccountingcreditnoteoutput.py +++ b/src/panora_sdk/models/unifiedaccountingcreditnoteoutput.py @@ -2,31 +2,33 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired +from typing import List +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingCreditnoteOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingCreditnoteOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingCreditnoteOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the credit note in the context of the 3rd Party""" - - + class UnifiedAccountingCreditnoteOutputRemoteData(BaseModel): r"""The remote data of the credit note in the context of the 3rd Party""" - - + class UnifiedAccountingCreditnoteOutputTypedDict(TypedDict): transaction_date: NotRequired[Nullable[datetime]] @@ -55,13 +57,17 @@ class UnifiedAccountingCreditnoteOutputTypedDict(TypedDict): r"""The applied payments associated with the credit note""" accounting_period_id: NotRequired[Nullable[str]] r"""The UUID of the associated accounting period""" - field_mappings: NotRequired[Nullable[UnifiedAccountingCreditnoteOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingCreditnoteOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the credit note record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the credit note in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingCreditnoteOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingCreditnoteOutputRemoteDataTypedDict] + ] r"""The remote data of the credit note in the context of the 3rd Party""" remote_created_at: NotRequired[Nullable[datetime]] r"""The date when the credit note was created in the remote system""" @@ -71,56 +77,122 @@ class UnifiedAccountingCreditnoteOutputTypedDict(TypedDict): r"""The created date of the credit note record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the credit note record""" - + class UnifiedAccountingCreditnoteOutput(BaseModel): transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the credit note transaction""" + status: OptionalNullable[str] = UNSET r"""The status of the credit note""" + number: OptionalNullable[str] = UNSET r"""The number of the credit note""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the credit note""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the credit note""" + remaining_credit: OptionalNullable[float] = UNSET r"""The remaining credit on the credit note""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the credit note""" + currency: OptionalNullable[str] = UNSET r"""The currency of the credit note""" + payments: OptionalNullable[List[str]] = UNSET r"""The payments associated with the credit note""" + applied_payments: OptionalNullable[List[str]] = UNSET r"""The applied payments associated with the credit note""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" - field_mappings: OptionalNullable[UnifiedAccountingCreditnoteOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingCreditnoteOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the credit note record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the credit note in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingCreditnoteOutputRemoteData] = UNSET r"""The remote data of the credit note in the context of the 3rd Party""" + remote_created_at: OptionalNullable[datetime] = UNSET r"""The date when the credit note was created in the remote system""" + remote_updated_at: OptionalNullable[datetime] = UNSET r"""The date when the credit note was last updated in the remote system""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the credit note record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the credit note record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["transaction_date", "status", "number", "contact_id", "company_id", "exchange_rate", "total_amount", "remaining_credit", "tracking_categories", "currency", "payments", "applied_payments", "accounting_period_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "remote_updated_at", "created_at", "modified_at"] - nullable_fields = ["transaction_date", "status", "number", "contact_id", "company_id", "exchange_rate", "total_amount", "remaining_credit", "tracking_categories", "currency", "payments", "applied_payments", "accounting_period_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "remote_updated_at", "created_at", "modified_at"] + optional_fields = [ + "transaction_date", + "status", + "number", + "contact_id", + "company_id", + "exchange_rate", + "total_amount", + "remaining_credit", + "tracking_categories", + "currency", + "payments", + "applied_payments", + "accounting_period_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_created_at", + "remote_updated_at", + "created_at", + "modified_at", + ] + nullable_fields = [ + "transaction_date", + "status", + "number", + "contact_id", + "company_id", + "exchange_rate", + "total_amount", + "remaining_credit", + "tracking_categories", + "currency", + "payments", + "applied_payments", + "accounting_period_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_created_at", + "remote_updated_at", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -130,21 +202,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingexpenseinput.py b/src/panora_sdk/models/unifiedaccountingexpenseinput.py index 4974f3c..461ccf6 100644 --- a/src/panora_sdk/models/unifiedaccountingexpenseinput.py +++ b/src/panora_sdk/models/unifiedaccountingexpenseinput.py @@ -3,21 +3,25 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingExpenseInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingExpenseInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingExpenseInputTypedDict(TypedDict): transaction_date: NotRequired[Nullable[datetime]] @@ -44,42 +48,83 @@ class UnifiedAccountingExpenseInputTypedDict(TypedDict): r"""The UUIDs of the tracking categories associated with the expense""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this expense""" - field_mappings: NotRequired[Nullable[UnifiedAccountingExpenseInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingExpenseInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingExpenseInput(BaseModel): transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the expense transaction""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the expense""" + sub_total: OptionalNullable[float] = UNSET r"""The sub-total amount of the expense (before tax)""" + total_tax_amount: OptionalNullable[float] = UNSET r"""The total tax amount of the expense""" + currency: OptionalNullable[str] = UNSET r"""The currency of the expense""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the expense""" + memo: OptionalNullable[str] = UNSET r"""A memo or description for the expense""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the associated account""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the expense""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this expense""" + field_mappings: OptionalNullable[UnifiedAccountingExpenseInputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["transaction_date", "total_amount", "sub_total", "total_tax_amount", "currency", "exchange_rate", "memo", "account_id", "contact_id", "company_info_id", "tracking_categories", "line_items", "field_mappings"] - nullable_fields = ["transaction_date", "total_amount", "sub_total", "total_tax_amount", "currency", "exchange_rate", "memo", "account_id", "contact_id", "company_info_id", "tracking_categories", "field_mappings"] + optional_fields = [ + "transaction_date", + "total_amount", + "sub_total", + "total_tax_amount", + "currency", + "exchange_rate", + "memo", + "account_id", + "contact_id", + "company_info_id", + "tracking_categories", + "line_items", + "field_mappings", + ] + nullable_fields = [ + "transaction_date", + "total_amount", + "sub_total", + "total_tax_amount", + "currency", + "exchange_rate", + "memo", + "account_id", + "contact_id", + "company_info_id", + "tracking_categories", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -89,21 +134,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingexpenseoutput.py b/src/panora_sdk/models/unifiedaccountingexpenseoutput.py index 83cff7c..382e89f 100644 --- a/src/panora_sdk/models/unifiedaccountingexpenseoutput.py +++ b/src/panora_sdk/models/unifiedaccountingexpenseoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingExpenseOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingExpenseOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingExpenseOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the expense in the context of the 3rd Party""" - - + class UnifiedAccountingExpenseOutputRemoteData(BaseModel): r"""The remote data of the expense in the context of the 3rd Party""" - - + class UnifiedAccountingExpenseOutputTypedDict(TypedDict): transaction_date: NotRequired[Nullable[datetime]] @@ -54,13 +56,17 @@ class UnifiedAccountingExpenseOutputTypedDict(TypedDict): r"""The UUIDs of the tracking categories associated with the expense""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this expense""" - field_mappings: NotRequired[Nullable[UnifiedAccountingExpenseOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingExpenseOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the expense record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the expense in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingExpenseOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingExpenseOutputRemoteDataTypedDict] + ] r"""The remote data of the expense in the context of the 3rd Party""" remote_created_at: NotRequired[Nullable[datetime]] r"""The date when the expense was created in the remote system""" @@ -68,52 +74,111 @@ class UnifiedAccountingExpenseOutputTypedDict(TypedDict): r"""The created date of the expense record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the expense record""" - + class UnifiedAccountingExpenseOutput(BaseModel): transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the expense transaction""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the expense""" + sub_total: OptionalNullable[float] = UNSET r"""The sub-total amount of the expense (before tax)""" + total_tax_amount: OptionalNullable[float] = UNSET r"""The total tax amount of the expense""" + currency: OptionalNullable[str] = UNSET r"""The currency of the expense""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the expense""" + memo: OptionalNullable[str] = UNSET r"""A memo or description for the expense""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the associated account""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the expense""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this expense""" - field_mappings: OptionalNullable[UnifiedAccountingExpenseOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingExpenseOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the expense record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the expense in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingExpenseOutputRemoteData] = UNSET r"""The remote data of the expense in the context of the 3rd Party""" + remote_created_at: OptionalNullable[datetime] = UNSET r"""The date when the expense was created in the remote system""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the expense record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the expense record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["transaction_date", "total_amount", "sub_total", "total_tax_amount", "currency", "exchange_rate", "memo", "account_id", "contact_id", "company_info_id", "tracking_categories", "line_items", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at"] - nullable_fields = ["transaction_date", "total_amount", "sub_total", "total_tax_amount", "currency", "exchange_rate", "memo", "account_id", "contact_id", "company_info_id", "tracking_categories", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at"] + optional_fields = [ + "transaction_date", + "total_amount", + "sub_total", + "total_tax_amount", + "currency", + "exchange_rate", + "memo", + "account_id", + "contact_id", + "company_info_id", + "tracking_categories", + "line_items", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_created_at", + "created_at", + "modified_at", + ] + nullable_fields = [ + "transaction_date", + "total_amount", + "sub_total", + "total_tax_amount", + "currency", + "exchange_rate", + "memo", + "account_id", + "contact_id", + "company_info_id", + "tracking_categories", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_created_at", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -123,21 +188,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingincomestatementoutput.py b/src/panora_sdk/models/unifiedaccountingincomestatementoutput.py index 2e8970f..494ea3e 100644 --- a/src/panora_sdk/models/unifiedaccountingincomestatementoutput.py +++ b/src/panora_sdk/models/unifiedaccountingincomestatementoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingIncomestatementOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingIncomestatementOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingIncomestatementOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the income statement in the context of the 3rd Party""" - - + class UnifiedAccountingIncomestatementOutputRemoteData(BaseModel): r"""The remote data of the income statement in the context of the 3rd Party""" - - + class UnifiedAccountingIncomestatementOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -43,52 +44,100 @@ class UnifiedAccountingIncomestatementOutputTypedDict(TypedDict): r"""The net operating income for the period""" net_income: NotRequired[Nullable[float]] r"""The net income for the period""" - field_mappings: NotRequired[Nullable[UnifiedAccountingIncomestatementOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingIncomestatementOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the income statement record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the income statement in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingIncomestatementOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingIncomestatementOutputRemoteDataTypedDict] + ] r"""The remote data of the income statement in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the income statement record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the income statement record""" - + class UnifiedAccountingIncomestatementOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the income statement""" + currency: OptionalNullable[str] = UNSET r"""The currency used in the income statement""" + start_period: OptionalNullable[datetime] = UNSET r"""The start date of the period covered by the income statement""" + end_period: OptionalNullable[datetime] = UNSET r"""The end date of the period covered by the income statement""" + gross_profit: OptionalNullable[float] = UNSET r"""The gross profit for the period""" + net_operating_income: OptionalNullable[float] = UNSET r"""The net operating income for the period""" + net_income: OptionalNullable[float] = UNSET r"""The net income for the period""" - field_mappings: OptionalNullable[UnifiedAccountingIncomestatementOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingIncomestatementOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the income statement record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the income statement in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedAccountingIncomestatementOutputRemoteData] = UNSET + + remote_data: OptionalNullable[UnifiedAccountingIncomestatementOutputRemoteData] = ( + UNSET + ) r"""The remote data of the income statement in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the income statement record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the income statement record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "currency", "start_period", "end_period", "gross_profit", "net_operating_income", "net_income", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "currency", "start_period", "end_period", "gross_profit", "net_operating_income", "net_income", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "name", + "currency", + "start_period", + "end_period", + "gross_profit", + "net_operating_income", + "net_income", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "currency", + "start_period", + "end_period", + "gross_profit", + "net_operating_income", + "net_income", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -98,21 +147,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountinginvoiceinput.py b/src/panora_sdk/models/unifiedaccountinginvoiceinput.py index 51debc8..df1f3d3 100644 --- a/src/panora_sdk/models/unifiedaccountinginvoiceinput.py +++ b/src/panora_sdk/models/unifiedaccountinginvoiceinput.py @@ -3,21 +3,25 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingInvoiceInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingInvoiceInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingInvoiceInputTypedDict(TypedDict): type: NotRequired[Nullable[str]] @@ -56,54 +60,113 @@ class UnifiedAccountingInvoiceInputTypedDict(TypedDict): r"""The UUIDs of the tracking categories associated with the invoice""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this invoice""" - field_mappings: NotRequired[Nullable[UnifiedAccountingInvoiceInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingInvoiceInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingInvoiceInput(BaseModel): type: OptionalNullable[str] = UNSET r"""The type of the invoice""" + number: OptionalNullable[str] = UNSET r"""The invoice number""" + issue_date: OptionalNullable[datetime] = UNSET r"""The date the invoice was issued""" + due_date: OptionalNullable[datetime] = UNSET r"""The due date of the invoice""" + paid_on_date: OptionalNullable[datetime] = UNSET r"""The date the invoice was paid""" + memo: OptionalNullable[str] = UNSET r"""A memo or note on the invoice""" + currency: OptionalNullable[str] = UNSET r"""The currency of the invoice""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the invoice""" + total_discount: OptionalNullable[float] = UNSET r"""The total discount applied to the invoice""" + sub_total: OptionalNullable[float] = UNSET r"""The subtotal of the invoice""" + status: OptionalNullable[str] = UNSET r"""The status of the invoice""" + total_tax_amount: OptionalNullable[float] = UNSET r"""The total tax amount on the invoice""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the invoice""" + balance: OptionalNullable[float] = UNSET r"""The remaining balance on the invoice""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the invoice""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this invoice""" + field_mappings: OptionalNullable[UnifiedAccountingInvoiceInputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["type", "number", "issue_date", "due_date", "paid_on_date", "memo", "currency", "exchange_rate", "total_discount", "sub_total", "status", "total_tax_amount", "total_amount", "balance", "contact_id", "accounting_period_id", "tracking_categories", "line_items", "field_mappings"] - nullable_fields = ["type", "number", "issue_date", "due_date", "paid_on_date", "memo", "currency", "exchange_rate", "total_discount", "sub_total", "status", "total_tax_amount", "total_amount", "balance", "contact_id", "accounting_period_id", "tracking_categories", "field_mappings"] + optional_fields = [ + "type", + "number", + "issue_date", + "due_date", + "paid_on_date", + "memo", + "currency", + "exchange_rate", + "total_discount", + "sub_total", + "status", + "total_tax_amount", + "total_amount", + "balance", + "contact_id", + "accounting_period_id", + "tracking_categories", + "line_items", + "field_mappings", + ] + nullable_fields = [ + "type", + "number", + "issue_date", + "due_date", + "paid_on_date", + "memo", + "currency", + "exchange_rate", + "total_discount", + "sub_total", + "status", + "total_tax_amount", + "total_amount", + "balance", + "contact_id", + "accounting_period_id", + "tracking_categories", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -113,21 +176,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountinginvoiceoutput.py b/src/panora_sdk/models/unifiedaccountinginvoiceoutput.py index 4783ac9..d39742c 100644 --- a/src/panora_sdk/models/unifiedaccountinginvoiceoutput.py +++ b/src/panora_sdk/models/unifiedaccountinginvoiceoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingInvoiceOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingInvoiceOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingInvoiceOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the invoice in the context of the 3rd Party""" - - + class UnifiedAccountingInvoiceOutputRemoteData(BaseModel): r"""The remote data of the invoice in the context of the 3rd Party""" - - + class UnifiedAccountingInvoiceOutputTypedDict(TypedDict): type: NotRequired[Nullable[str]] @@ -66,13 +68,17 @@ class UnifiedAccountingInvoiceOutputTypedDict(TypedDict): r"""The UUIDs of the tracking categories associated with the invoice""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this invoice""" - field_mappings: NotRequired[Nullable[UnifiedAccountingInvoiceOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingInvoiceOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the invoice record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the invoice in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingInvoiceOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingInvoiceOutputRemoteDataTypedDict] + ] r"""The remote data of the invoice in the context of the 3rd Party""" remote_updated_at: NotRequired[Nullable[datetime]] r"""The date when the invoice was last updated in the remote system""" @@ -80,64 +86,141 @@ class UnifiedAccountingInvoiceOutputTypedDict(TypedDict): r"""The created date of the invoice record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the invoice record""" - + class UnifiedAccountingInvoiceOutput(BaseModel): type: OptionalNullable[str] = UNSET r"""The type of the invoice""" + number: OptionalNullable[str] = UNSET r"""The invoice number""" + issue_date: OptionalNullable[datetime] = UNSET r"""The date the invoice was issued""" + due_date: OptionalNullable[datetime] = UNSET r"""The due date of the invoice""" + paid_on_date: OptionalNullable[datetime] = UNSET r"""The date the invoice was paid""" + memo: OptionalNullable[str] = UNSET r"""A memo or note on the invoice""" + currency: OptionalNullable[str] = UNSET r"""The currency of the invoice""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the invoice""" + total_discount: OptionalNullable[float] = UNSET r"""The total discount applied to the invoice""" + sub_total: OptionalNullable[float] = UNSET r"""The subtotal of the invoice""" + status: OptionalNullable[str] = UNSET r"""The status of the invoice""" + total_tax_amount: OptionalNullable[float] = UNSET r"""The total tax amount on the invoice""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the invoice""" + balance: OptionalNullable[float] = UNSET r"""The remaining balance on the invoice""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the invoice""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this invoice""" - field_mappings: OptionalNullable[UnifiedAccountingInvoiceOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingInvoiceOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the invoice record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the invoice in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingInvoiceOutputRemoteData] = UNSET r"""The remote data of the invoice in the context of the 3rd Party""" + remote_updated_at: OptionalNullable[datetime] = UNSET r"""The date when the invoice was last updated in the remote system""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the invoice record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the invoice record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["type", "number", "issue_date", "due_date", "paid_on_date", "memo", "currency", "exchange_rate", "total_discount", "sub_total", "status", "total_tax_amount", "total_amount", "balance", "contact_id", "accounting_period_id", "tracking_categories", "line_items", "field_mappings", "id", "remote_id", "remote_data", "remote_updated_at", "created_at", "modified_at"] - nullable_fields = ["type", "number", "issue_date", "due_date", "paid_on_date", "memo", "currency", "exchange_rate", "total_discount", "sub_total", "status", "total_tax_amount", "total_amount", "balance", "contact_id", "accounting_period_id", "tracking_categories", "field_mappings", "id", "remote_id", "remote_data", "remote_updated_at", "created_at", "modified_at"] + optional_fields = [ + "type", + "number", + "issue_date", + "due_date", + "paid_on_date", + "memo", + "currency", + "exchange_rate", + "total_discount", + "sub_total", + "status", + "total_tax_amount", + "total_amount", + "balance", + "contact_id", + "accounting_period_id", + "tracking_categories", + "line_items", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_updated_at", + "created_at", + "modified_at", + ] + nullable_fields = [ + "type", + "number", + "issue_date", + "due_date", + "paid_on_date", + "memo", + "currency", + "exchange_rate", + "total_discount", + "sub_total", + "status", + "total_tax_amount", + "total_amount", + "balance", + "contact_id", + "accounting_period_id", + "tracking_categories", + "field_mappings", + "id", + "remote_id", + "remote_data", + "remote_updated_at", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -147,21 +230,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingitemoutput.py b/src/panora_sdk/models/unifiedaccountingitemoutput.py index aa3b9d2..4f25ab0 100644 --- a/src/panora_sdk/models/unifiedaccountingitemoutput.py +++ b/src/panora_sdk/models/unifiedaccountingitemoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingItemOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingItemOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingItemOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the item in the context of the 3rd Party""" - - + class UnifiedAccountingItemOutputRemoteData(BaseModel): r"""The remote data of the item in the context of the 3rd Party""" - - + class UnifiedAccountingItemOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -43,7 +44,9 @@ class UnifiedAccountingItemOutputTypedDict(TypedDict): r"""The UUID of the associated purchase account""" company_info_id: NotRequired[Nullable[str]] r"""The UUID of the associated company info""" - field_mappings: NotRequired[Nullable[UnifiedAccountingItemOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingItemOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the accounting item record""" @@ -57,42 +60,85 @@ class UnifiedAccountingItemOutputTypedDict(TypedDict): r"""The created date of the accounting item record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the accounting item record""" - + class UnifiedAccountingItemOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the accounting item""" + status: OptionalNullable[str] = UNSET r"""The status of the accounting item""" + unit_price: OptionalNullable[float] = UNSET r"""The unit price of the item in cents""" + purchase_price: OptionalNullable[float] = UNSET r"""The purchase price of the item in cents""" + sales_account: OptionalNullable[str] = UNSET r"""The UUID of the associated sales account""" + purchase_account: OptionalNullable[str] = UNSET r"""The UUID of the associated purchase account""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + field_mappings: OptionalNullable[UnifiedAccountingItemOutputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the accounting item record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the item in the context of the 3rd Party""" + remote_updated_at: OptionalNullable[datetime] = UNSET r"""The date when the item was last updated in the remote system""" + remote_data: OptionalNullable[UnifiedAccountingItemOutputRemoteData] = UNSET r"""The remote data of the item in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the accounting item record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the accounting item record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "status", "unit_price", "purchase_price", "sales_account", "purchase_account", "company_info_id", "field_mappings", "id", "remote_id", "remote_updated_at", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "status", "unit_price", "purchase_price", "sales_account", "purchase_account", "company_info_id", "field_mappings", "id", "remote_id", "remote_updated_at", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "name", + "status", + "unit_price", + "purchase_price", + "sales_account", + "purchase_account", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_updated_at", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "status", + "unit_price", + "purchase_price", + "sales_account", + "purchase_account", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_updated_at", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -102,21 +148,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingjournalentryinput.py b/src/panora_sdk/models/unifiedaccountingjournalentryinput.py index 5ab45a5..1e0c0da 100644 --- a/src/panora_sdk/models/unifiedaccountingjournalentryinput.py +++ b/src/panora_sdk/models/unifiedaccountingjournalentryinput.py @@ -3,21 +3,25 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingJournalentryInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingJournalentryInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingJournalentryInputTypedDict(TypedDict): transaction_date: NotRequired[Nullable[datetime]] @@ -44,42 +48,84 @@ class UnifiedAccountingJournalentryInputTypedDict(TypedDict): r"""The posting status of the journal entry""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this journal entry""" - field_mappings: NotRequired[Nullable[UnifiedAccountingJournalentryInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingJournalentryInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingJournalentryInput(BaseModel): transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the transaction""" + payments: OptionalNullable[List[str]] = UNSET r"""The payments associated with the journal entry""" + applied_payments: OptionalNullable[List[str]] = UNSET r"""The applied payments for the journal entry""" + memo: OptionalNullable[str] = UNSET r"""A memo or note for the journal entry""" + currency: OptionalNullable[str] = UNSET r"""The currency of the journal entry""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the journal entry""" + id_acc_company_info: Optional[str] = None r"""The UUID of the associated company info""" + journal_number: OptionalNullable[str] = UNSET r"""The journal number""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the journal entry""" + id_acc_accounting_period: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + posting_status: OptionalNullable[str] = UNSET r"""The posting status of the journal entry""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this journal entry""" - field_mappings: OptionalNullable[UnifiedAccountingJournalentryInputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingJournalentryInputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["transaction_date", "payments", "applied_payments", "memo", "currency", "exchange_rate", "id_acc_company_info", "journal_number", "tracking_categories", "id_acc_accounting_period", "posting_status", "line_items", "field_mappings"] - nullable_fields = ["transaction_date", "payments", "applied_payments", "memo", "currency", "exchange_rate", "journal_number", "tracking_categories", "id_acc_accounting_period", "posting_status", "field_mappings"] + optional_fields = [ + "transaction_date", + "payments", + "applied_payments", + "memo", + "currency", + "exchange_rate", + "id_acc_company_info", + "journal_number", + "tracking_categories", + "id_acc_accounting_period", + "posting_status", + "line_items", + "field_mappings", + ] + nullable_fields = [ + "transaction_date", + "payments", + "applied_payments", + "memo", + "currency", + "exchange_rate", + "journal_number", + "tracking_categories", + "id_acc_accounting_period", + "posting_status", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -89,21 +135,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingjournalentryoutput.py b/src/panora_sdk/models/unifiedaccountingjournalentryoutput.py index 5334d90..8edc520 100644 --- a/src/panora_sdk/models/unifiedaccountingjournalentryoutput.py +++ b/src/panora_sdk/models/unifiedaccountingjournalentryoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingJournalentryOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingJournalentryOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingJournalentryOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the journal entry in the context of the 3rd Party""" - - + class UnifiedAccountingJournalentryOutputRemoteData(BaseModel): r"""The remote data of the journal entry in the context of the 3rd Party""" - - + class UnifiedAccountingJournalentryOutputTypedDict(TypedDict): transaction_date: NotRequired[Nullable[datetime]] @@ -54,7 +56,9 @@ class UnifiedAccountingJournalentryOutputTypedDict(TypedDict): r"""The posting status of the journal entry""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this journal entry""" - field_mappings: NotRequired[Nullable[UnifiedAccountingJournalentryOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingJournalentryOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the journal entry record""" @@ -64,60 +68,122 @@ class UnifiedAccountingJournalentryOutputTypedDict(TypedDict): r"""The date when the journal entry was created in the remote system""" remote_modiified_at: NotRequired[Nullable[datetime]] r"""The date when the journal entry was last modified in the remote system""" - remote_data: NotRequired[Nullable[UnifiedAccountingJournalentryOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingJournalentryOutputRemoteDataTypedDict] + ] r"""The remote data of the journal entry in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the journal entry record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the journal entry record""" - + class UnifiedAccountingJournalentryOutput(BaseModel): transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the transaction""" + payments: OptionalNullable[List[str]] = UNSET r"""The payments associated with the journal entry""" + applied_payments: OptionalNullable[List[str]] = UNSET r"""The applied payments for the journal entry""" + memo: OptionalNullable[str] = UNSET r"""A memo or note for the journal entry""" + currency: OptionalNullable[str] = UNSET r"""The currency of the journal entry""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the journal entry""" + id_acc_company_info: Optional[str] = None r"""The UUID of the associated company info""" + journal_number: OptionalNullable[str] = UNSET r"""The journal number""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the journal entry""" + id_acc_accounting_period: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + posting_status: OptionalNullable[str] = UNSET r"""The posting status of the journal entry""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this journal entry""" - field_mappings: OptionalNullable[UnifiedAccountingJournalentryOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingJournalentryOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the journal entry record""" + remote_id: Optional[str] = None r"""The remote ID of the journal entry in the context of the 3rd Party""" + remote_created_at: OptionalNullable[datetime] = UNSET r"""The date when the journal entry was created in the remote system""" + remote_modiified_at: OptionalNullable[datetime] = UNSET r"""The date when the journal entry was last modified in the remote system""" + remote_data: OptionalNullable[UnifiedAccountingJournalentryOutputRemoteData] = UNSET r"""The remote data of the journal entry in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the journal entry record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the journal entry record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["transaction_date", "payments", "applied_payments", "memo", "currency", "exchange_rate", "id_acc_company_info", "journal_number", "tracking_categories", "id_acc_accounting_period", "posting_status", "line_items", "field_mappings", "id", "remote_id", "remote_created_at", "remote_modiified_at", "remote_data", "created_at", "modified_at"] - nullable_fields = ["transaction_date", "payments", "applied_payments", "memo", "currency", "exchange_rate", "journal_number", "tracking_categories", "id_acc_accounting_period", "posting_status", "field_mappings", "id", "remote_created_at", "remote_modiified_at", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "transaction_date", + "payments", + "applied_payments", + "memo", + "currency", + "exchange_rate", + "id_acc_company_info", + "journal_number", + "tracking_categories", + "id_acc_accounting_period", + "posting_status", + "line_items", + "field_mappings", + "id", + "remote_id", + "remote_created_at", + "remote_modiified_at", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "transaction_date", + "payments", + "applied_payments", + "memo", + "currency", + "exchange_rate", + "journal_number", + "tracking_categories", + "id_acc_accounting_period", + "posting_status", + "field_mappings", + "id", + "remote_created_at", + "remote_modiified_at", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -127,21 +193,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingpaymentinput.py b/src/panora_sdk/models/unifiedaccountingpaymentinput.py index 8001aab..d368717 100644 --- a/src/panora_sdk/models/unifiedaccountingpaymentinput.py +++ b/src/panora_sdk/models/unifiedaccountingpaymentinput.py @@ -3,21 +3,25 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingPaymentInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPaymentInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPaymentInputTypedDict(TypedDict): invoice_id: NotRequired[Nullable[str]] @@ -44,42 +48,83 @@ class UnifiedAccountingPaymentInputTypedDict(TypedDict): r"""The UUIDs of the tracking categories associated with the payment""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this payment""" - field_mappings: NotRequired[Nullable[UnifiedAccountingPaymentInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingPaymentInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingPaymentInput(BaseModel): invoice_id: OptionalNullable[str] = UNSET r"""The UUID of the associated invoice""" + transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the transaction""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the associated account""" + currency: OptionalNullable[str] = UNSET r"""The currency of the payment""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the payment""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the payment in cents""" + type: OptionalNullable[str] = UNSET r"""The type of payment""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the payment""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this payment""" + field_mappings: OptionalNullable[UnifiedAccountingPaymentInputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["invoice_id", "transaction_date", "contact_id", "account_id", "currency", "exchange_rate", "total_amount", "type", "company_info_id", "accounting_period_id", "tracking_categories", "line_items", "field_mappings"] - nullable_fields = ["invoice_id", "transaction_date", "contact_id", "account_id", "currency", "exchange_rate", "total_amount", "type", "company_info_id", "accounting_period_id", "tracking_categories", "field_mappings"] + optional_fields = [ + "invoice_id", + "transaction_date", + "contact_id", + "account_id", + "currency", + "exchange_rate", + "total_amount", + "type", + "company_info_id", + "accounting_period_id", + "tracking_categories", + "line_items", + "field_mappings", + ] + nullable_fields = [ + "invoice_id", + "transaction_date", + "contact_id", + "account_id", + "currency", + "exchange_rate", + "total_amount", + "type", + "company_info_id", + "accounting_period_id", + "tracking_categories", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -89,21 +134,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingpaymentoutput.py b/src/panora_sdk/models/unifiedaccountingpaymentoutput.py index 0021725..f5bc532 100644 --- a/src/panora_sdk/models/unifiedaccountingpaymentoutput.py +++ b/src/panora_sdk/models/unifiedaccountingpaymentoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingPaymentOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPaymentOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPaymentOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the payment in the context of the 3rd Party""" - - + class UnifiedAccountingPaymentOutputRemoteData(BaseModel): r"""The remote data of the payment in the context of the 3rd Party""" - - + class UnifiedAccountingPaymentOutputTypedDict(TypedDict): invoice_id: NotRequired[Nullable[str]] @@ -54,7 +56,9 @@ class UnifiedAccountingPaymentOutputTypedDict(TypedDict): r"""The UUIDs of the tracking categories associated with the payment""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this payment""" - field_mappings: NotRequired[Nullable[UnifiedAccountingPaymentOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingPaymentOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the payment record""" @@ -62,58 +66,119 @@ class UnifiedAccountingPaymentOutputTypedDict(TypedDict): r"""The remote ID of the payment in the context of the 3rd Party""" remote_updated_at: NotRequired[Nullable[datetime]] r"""The date when the payment was last updated in the remote system""" - remote_data: NotRequired[Nullable[UnifiedAccountingPaymentOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingPaymentOutputRemoteDataTypedDict] + ] r"""The remote data of the payment in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the payment record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the payment record""" - + class UnifiedAccountingPaymentOutput(BaseModel): invoice_id: OptionalNullable[str] = UNSET r"""The UUID of the associated invoice""" + transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the transaction""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the associated account""" + currency: OptionalNullable[str] = UNSET r"""The currency of the payment""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the payment""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the payment in cents""" + type: OptionalNullable[str] = UNSET r"""The type of payment""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the payment""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this payment""" - field_mappings: OptionalNullable[UnifiedAccountingPaymentOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingPaymentOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the payment record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the payment in the context of the 3rd Party""" + remote_updated_at: OptionalNullable[datetime] = UNSET r"""The date when the payment was last updated in the remote system""" + remote_data: OptionalNullable[UnifiedAccountingPaymentOutputRemoteData] = UNSET r"""The remote data of the payment in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the payment record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the payment record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["invoice_id", "transaction_date", "contact_id", "account_id", "currency", "exchange_rate", "total_amount", "type", "company_info_id", "accounting_period_id", "tracking_categories", "line_items", "field_mappings", "id", "remote_id", "remote_updated_at", "remote_data", "created_at", "modified_at"] - nullable_fields = ["invoice_id", "transaction_date", "contact_id", "account_id", "currency", "exchange_rate", "total_amount", "type", "company_info_id", "accounting_period_id", "tracking_categories", "field_mappings", "id", "remote_id", "remote_updated_at", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "invoice_id", + "transaction_date", + "contact_id", + "account_id", + "currency", + "exchange_rate", + "total_amount", + "type", + "company_info_id", + "accounting_period_id", + "tracking_categories", + "line_items", + "field_mappings", + "id", + "remote_id", + "remote_updated_at", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "invoice_id", + "transaction_date", + "contact_id", + "account_id", + "currency", + "exchange_rate", + "total_amount", + "type", + "company_info_id", + "accounting_period_id", + "tracking_categories", + "field_mappings", + "id", + "remote_id", + "remote_updated_at", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -123,21 +188,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingphonenumberoutput.py b/src/panora_sdk/models/unifiedaccountingphonenumberoutput.py index 429a4d5..691f9e5 100644 --- a/src/panora_sdk/models/unifiedaccountingphonenumberoutput.py +++ b/src/panora_sdk/models/unifiedaccountingphonenumberoutput.py @@ -2,31 +2,33 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Optional, TypedDict -from typing_extensions import NotRequired +from typing import Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingPhonenumberOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPhonenumberOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPhonenumberOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the phone number in the context of the 3rd Party""" - - + class UnifiedAccountingPhonenumberOutputRemoteData(BaseModel): r"""The remote data of the phone number in the context of the 3rd Party""" - - + class UnifiedAccountingPhonenumberOutputTypedDict(TypedDict): number: NotRequired[Nullable[str]] @@ -37,46 +39,82 @@ class UnifiedAccountingPhonenumberOutputTypedDict(TypedDict): r"""The UUID of the associated company info""" contact_id: NotRequired[str] r"""The UUID of the associated contact""" - field_mappings: NotRequired[Nullable[UnifiedAccountingPhonenumberOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingPhonenumberOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the phone number record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the phone number in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingPhonenumberOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingPhonenumberOutputRemoteDataTypedDict] + ] r"""The remote data of the phone number in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the phone number record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the phone number record""" - + class UnifiedAccountingPhonenumberOutput(BaseModel): number: OptionalNullable[str] = UNSET r"""The phone number""" + type: OptionalNullable[str] = UNSET r"""The type of phone number""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + contact_id: Optional[str] = None r"""The UUID of the associated contact""" - field_mappings: OptionalNullable[UnifiedAccountingPhonenumberOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingPhonenumberOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the phone number record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the phone number in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingPhonenumberOutputRemoteData] = UNSET r"""The remote data of the phone number in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the phone number record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the phone number record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["number", "type", "company_info_id", "contact_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["number", "type", "company_info_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "number", + "type", + "company_info_id", + "contact_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "number", + "type", + "company_info_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -86,21 +124,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingpurchaseorderinput.py b/src/panora_sdk/models/unifiedaccountingpurchaseorderinput.py index 3579680..04a2ef3 100644 --- a/src/panora_sdk/models/unifiedaccountingpurchaseorderinput.py +++ b/src/panora_sdk/models/unifiedaccountingpurchaseorderinput.py @@ -3,21 +3,25 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingPurchaseorderInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPurchaseorderInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPurchaseorderInputTypedDict(TypedDict): status: NotRequired[Nullable[str]] @@ -50,48 +54,100 @@ class UnifiedAccountingPurchaseorderInputTypedDict(TypedDict): r"""The UUID of the associated accounting period""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this purchase order""" - field_mappings: NotRequired[Nullable[UnifiedAccountingPurchaseorderInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingPurchaseorderInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedAccountingPurchaseorderInput(BaseModel): status: OptionalNullable[str] = UNSET r"""The status of the purchase order""" + issue_date: OptionalNullable[datetime] = UNSET r"""The issue date of the purchase order""" + purchase_order_number: OptionalNullable[str] = UNSET r"""The purchase order number""" + delivery_date: OptionalNullable[datetime] = UNSET r"""The delivery date for the purchase order""" + delivery_address: OptionalNullable[str] = UNSET r"""The UUID of the delivery address""" + customer: OptionalNullable[str] = UNSET r"""The UUID of the customer""" + vendor: OptionalNullable[str] = UNSET r"""The UUID of the vendor""" + memo: OptionalNullable[str] = UNSET r"""A memo or note for the purchase order""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the purchase order in cents""" + currency: OptionalNullable[str] = UNSET r"""The currency of the purchase order""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the purchase order""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the purchase order""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this purchase order""" - field_mappings: OptionalNullable[UnifiedAccountingPurchaseorderInputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingPurchaseorderInputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["status", "issue_date", "purchase_order_number", "delivery_date", "delivery_address", "customer", "vendor", "memo", "company_id", "total_amount", "currency", "exchange_rate", "tracking_categories", "accounting_period_id", "line_items", "field_mappings"] - nullable_fields = ["status", "issue_date", "purchase_order_number", "delivery_date", "delivery_address", "customer", "vendor", "memo", "company_id", "total_amount", "currency", "exchange_rate", "tracking_categories", "accounting_period_id", "field_mappings"] + optional_fields = [ + "status", + "issue_date", + "purchase_order_number", + "delivery_date", + "delivery_address", + "customer", + "vendor", + "memo", + "company_id", + "total_amount", + "currency", + "exchange_rate", + "tracking_categories", + "accounting_period_id", + "line_items", + "field_mappings", + ] + nullable_fields = [ + "status", + "issue_date", + "purchase_order_number", + "delivery_date", + "delivery_address", + "customer", + "vendor", + "memo", + "company_id", + "total_amount", + "currency", + "exchange_rate", + "tracking_categories", + "accounting_period_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -101,21 +157,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingpurchaseorderoutput.py b/src/panora_sdk/models/unifiedaccountingpurchaseorderoutput.py index 50ec60c..4184581 100644 --- a/src/panora_sdk/models/unifiedaccountingpurchaseorderoutput.py +++ b/src/panora_sdk/models/unifiedaccountingpurchaseorderoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingPurchaseorderOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPurchaseorderOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingPurchaseorderOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the purchase order in the context of the 3rd Party""" - - + class UnifiedAccountingPurchaseorderOutputRemoteData(BaseModel): r"""The remote data of the purchase order in the context of the 3rd Party""" - - + class UnifiedAccountingPurchaseorderOutputTypedDict(TypedDict): status: NotRequired[Nullable[str]] @@ -60,7 +62,9 @@ class UnifiedAccountingPurchaseorderOutputTypedDict(TypedDict): r"""The UUID of the associated accounting period""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this purchase order""" - field_mappings: NotRequired[Nullable[UnifiedAccountingPurchaseorderOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingPurchaseorderOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the purchase order record""" @@ -70,66 +74,141 @@ class UnifiedAccountingPurchaseorderOutputTypedDict(TypedDict): r"""The date when the purchase order was created in the remote system""" remote_updated_at: NotRequired[Nullable[datetime]] r"""The date when the purchase order was last updated in the remote system""" - remote_data: NotRequired[Nullable[UnifiedAccountingPurchaseorderOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingPurchaseorderOutputRemoteDataTypedDict] + ] r"""The remote data of the purchase order in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the purchase order record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the purchase order record""" - + class UnifiedAccountingPurchaseorderOutput(BaseModel): status: OptionalNullable[str] = UNSET r"""The status of the purchase order""" + issue_date: OptionalNullable[datetime] = UNSET r"""The issue date of the purchase order""" + purchase_order_number: OptionalNullable[str] = UNSET r"""The purchase order number""" + delivery_date: OptionalNullable[datetime] = UNSET r"""The delivery date for the purchase order""" + delivery_address: OptionalNullable[str] = UNSET r"""The UUID of the delivery address""" + customer: OptionalNullable[str] = UNSET r"""The UUID of the customer""" + vendor: OptionalNullable[str] = UNSET r"""The UUID of the vendor""" + memo: OptionalNullable[str] = UNSET r"""A memo or note for the purchase order""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company""" + total_amount: OptionalNullable[float] = UNSET r"""The total amount of the purchase order in cents""" + currency: OptionalNullable[str] = UNSET r"""The currency of the purchase order""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the purchase order""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the purchase order""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this purchase order""" - field_mappings: OptionalNullable[UnifiedAccountingPurchaseorderOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingPurchaseorderOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the purchase order record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the purchase order in the context of the 3rd Party""" + remote_created_at: OptionalNullable[datetime] = UNSET r"""The date when the purchase order was created in the remote system""" + remote_updated_at: OptionalNullable[datetime] = UNSET r"""The date when the purchase order was last updated in the remote system""" - remote_data: OptionalNullable[UnifiedAccountingPurchaseorderOutputRemoteData] = UNSET + + remote_data: OptionalNullable[UnifiedAccountingPurchaseorderOutputRemoteData] = ( + UNSET + ) r"""The remote data of the purchase order in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the purchase order record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the purchase order record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["status", "issue_date", "purchase_order_number", "delivery_date", "delivery_address", "customer", "vendor", "memo", "company_id", "total_amount", "currency", "exchange_rate", "tracking_categories", "accounting_period_id", "line_items", "field_mappings", "id", "remote_id", "remote_created_at", "remote_updated_at", "remote_data", "created_at", "modified_at"] - nullable_fields = ["status", "issue_date", "purchase_order_number", "delivery_date", "delivery_address", "customer", "vendor", "memo", "company_id", "total_amount", "currency", "exchange_rate", "tracking_categories", "accounting_period_id", "field_mappings", "id", "remote_id", "remote_created_at", "remote_updated_at", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "status", + "issue_date", + "purchase_order_number", + "delivery_date", + "delivery_address", + "customer", + "vendor", + "memo", + "company_id", + "total_amount", + "currency", + "exchange_rate", + "tracking_categories", + "accounting_period_id", + "line_items", + "field_mappings", + "id", + "remote_id", + "remote_created_at", + "remote_updated_at", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "status", + "issue_date", + "purchase_order_number", + "delivery_date", + "delivery_address", + "customer", + "vendor", + "memo", + "company_id", + "total_amount", + "currency", + "exchange_rate", + "tracking_categories", + "accounting_period_id", + "field_mappings", + "id", + "remote_id", + "remote_created_at", + "remote_updated_at", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -139,21 +218,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingtaxrateoutput.py b/src/panora_sdk/models/unifiedaccountingtaxrateoutput.py index 77b9e18..9db8a2e 100644 --- a/src/panora_sdk/models/unifiedaccountingtaxrateoutput.py +++ b/src/panora_sdk/models/unifiedaccountingtaxrateoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingTaxrateOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingTaxrateOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingTaxrateOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the tax rate in the context of the 3rd Party""" - - + class UnifiedAccountingTaxrateOutputRemoteData(BaseModel): r"""The remote data of the tax rate in the context of the 3rd Party""" - - + class UnifiedAccountingTaxrateOutputTypedDict(TypedDict): description: NotRequired[Nullable[str]] @@ -37,46 +38,83 @@ class UnifiedAccountingTaxrateOutputTypedDict(TypedDict): r"""The effective tax rate in basis points (e.g., 1900 for 19%)""" company_id: NotRequired[Nullable[str]] r"""The UUID of the associated company""" - field_mappings: NotRequired[Nullable[UnifiedAccountingTaxrateOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingTaxrateOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the tax rate record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the tax rate in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingTaxrateOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingTaxrateOutputRemoteDataTypedDict] + ] r"""The remote data of the tax rate in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the tax rate record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the tax rate record""" - + class UnifiedAccountingTaxrateOutput(BaseModel): description: OptionalNullable[str] = UNSET r"""The description of the tax rate""" + total_tax_ratge: OptionalNullable[float] = UNSET r"""The total tax rate in basis points (e.g., 2000 for 20%)""" + effective_tax_rate: OptionalNullable[float] = UNSET r"""The effective tax rate in basis points (e.g., 1900 for 19%)""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company""" - field_mappings: OptionalNullable[UnifiedAccountingTaxrateOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedAccountingTaxrateOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the tax rate record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the tax rate in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedAccountingTaxrateOutputRemoteData] = UNSET r"""The remote data of the tax rate in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the tax rate record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the tax rate record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["description", "total_tax_ratge", "effective_tax_rate", "company_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["description", "total_tax_ratge", "effective_tax_rate", "company_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "description", + "total_tax_ratge", + "effective_tax_rate", + "company_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "description", + "total_tax_ratge", + "effective_tax_rate", + "company_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -86,21 +124,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingtrackingcategoryoutput.py b/src/panora_sdk/models/unifiedaccountingtrackingcategoryoutput.py index 596a964..839ea3e 100644 --- a/src/panora_sdk/models/unifiedaccountingtrackingcategoryoutput.py +++ b/src/panora_sdk/models/unifiedaccountingtrackingcategoryoutput.py @@ -2,31 +2,32 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingTrackingcategoryOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingTrackingcategoryOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingTrackingcategoryOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the tracking category in the context of the 3rd Party""" - - + class UnifiedAccountingTrackingcategoryOutputRemoteData(BaseModel): r"""The remote data of the tracking category in the context of the 3rd Party""" - - + class UnifiedAccountingTrackingcategoryOutputTypedDict(TypedDict): name: NotRequired[Nullable[str]] @@ -37,46 +38,85 @@ class UnifiedAccountingTrackingcategoryOutputTypedDict(TypedDict): r"""The type of the tracking category""" parent_category: NotRequired[Nullable[str]] r"""The UUID of the parent category, if applicable""" - field_mappings: NotRequired[Nullable[UnifiedAccountingTrackingcategoryOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingTrackingcategoryOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the tracking category record""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the tracking category in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedAccountingTrackingcategoryOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingTrackingcategoryOutputRemoteDataTypedDict] + ] r"""The remote data of the tracking category in the context of the 3rd Party""" created_at: NotRequired[Nullable[datetime]] r"""The created date of the tracking category record""" modified_at: NotRequired[Nullable[datetime]] r"""The last modified date of the tracking category record""" - + class UnifiedAccountingTrackingcategoryOutput(BaseModel): name: OptionalNullable[str] = UNSET r"""The name of the tracking category""" + status: OptionalNullable[str] = UNSET r"""The status of the tracking category""" + category_type: OptionalNullable[str] = UNSET r"""The type of the tracking category""" + parent_category: OptionalNullable[str] = UNSET r"""The UUID of the parent category, if applicable""" - field_mappings: OptionalNullable[UnifiedAccountingTrackingcategoryOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingTrackingcategoryOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the tracking category record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the tracking category in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedAccountingTrackingcategoryOutputRemoteData] = UNSET + + remote_data: OptionalNullable[UnifiedAccountingTrackingcategoryOutputRemoteData] = ( + UNSET + ) r"""The remote data of the tracking category in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the tracking category record""" + modified_at: OptionalNullable[datetime] = UNSET r"""The last modified date of the tracking category record""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["name", "status", "category_type", "parent_category", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "status", "category_type", "parent_category", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "name", + "status", + "category_type", + "parent_category", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "status", + "category_type", + "parent_category", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -86,21 +126,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingtransactionoutput.py b/src/panora_sdk/models/unifiedaccountingtransactionoutput.py index 0c503bd..60a3373 100644 --- a/src/panora_sdk/models/unifiedaccountingtransactionoutput.py +++ b/src/panora_sdk/models/unifiedaccountingtransactionoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingTransactionOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingTransactionOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingTransactionOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the tracking category in the context of the 3rd Party""" - - + class UnifiedAccountingTransactionOutputRemoteData(BaseModel): r"""The remote data of the tracking category in the context of the 3rd Party""" - - + class UnifiedAccountingTransactionOutputTypedDict(TypedDict): transaction_type: NotRequired[Nullable[str]] @@ -54,7 +56,9 @@ class UnifiedAccountingTransactionOutputTypedDict(TypedDict): r"""The UUID of the associated accounting period""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this transaction""" - field_mappings: NotRequired[Nullable[UnifiedAccountingTransactionOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingTransactionOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the transaction record""" @@ -62,58 +66,116 @@ class UnifiedAccountingTransactionOutputTypedDict(TypedDict): r"""The remote ID of the transaction""" created_at: NotRequired[datetime] r"""The created date of the transaction""" - remote_data: NotRequired[Nullable[UnifiedAccountingTransactionOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingTransactionOutputRemoteDataTypedDict] + ] r"""The remote data of the tracking category in the context of the 3rd Party""" modified_at: NotRequired[datetime] r"""The last modified date of the transaction""" remote_updated_at: NotRequired[Nullable[datetime]] r"""The date when the transaction was last updated in the remote system""" - + class UnifiedAccountingTransactionOutput(BaseModel): transaction_type: OptionalNullable[str] = UNSET r"""The type of the transaction""" + number: OptionalNullable[str] = UNSET r"""The transaction number""" + transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the transaction""" + total_amount: OptionalNullable[str] = UNSET r"""The total amount of the transaction""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the transaction""" + currency: OptionalNullable[str] = UNSET r"""The currency of the transaction""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUIDs of the tracking categories associated with the transaction""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the associated account""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the associated contact""" + company_info_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company info""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this transaction""" - field_mappings: OptionalNullable[UnifiedAccountingTransactionOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingTransactionOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the transaction record""" + remote_id: Optional[str] = None r"""The remote ID of the transaction""" + created_at: Optional[datetime] = None r"""The created date of the transaction""" + remote_data: OptionalNullable[UnifiedAccountingTransactionOutputRemoteData] = UNSET r"""The remote data of the tracking category in the context of the 3rd Party""" + modified_at: Optional[datetime] = None r"""The last modified date of the transaction""" + remote_updated_at: OptionalNullable[datetime] = UNSET r"""The date when the transaction was last updated in the remote system""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["transaction_type", "number", "transaction_date", "total_amount", "exchange_rate", "currency", "tracking_categories", "account_id", "contact_id", "company_info_id", "accounting_period_id", "line_items", "field_mappings", "id", "remote_id", "created_at", "remote_data", "modified_at", "remote_updated_at"] - nullable_fields = ["transaction_type", "number", "transaction_date", "total_amount", "exchange_rate", "currency", "tracking_categories", "account_id", "contact_id", "company_info_id", "accounting_period_id", "field_mappings", "id", "remote_data", "remote_updated_at"] + optional_fields = [ + "transaction_type", + "number", + "transaction_date", + "total_amount", + "exchange_rate", + "currency", + "tracking_categories", + "account_id", + "contact_id", + "company_info_id", + "accounting_period_id", + "line_items", + "field_mappings", + "id", + "remote_id", + "created_at", + "remote_data", + "modified_at", + "remote_updated_at", + ] + nullable_fields = [ + "transaction_type", + "number", + "transaction_date", + "total_amount", + "exchange_rate", + "currency", + "tracking_categories", + "account_id", + "contact_id", + "company_info_id", + "accounting_period_id", + "field_mappings", + "id", + "remote_data", + "remote_updated_at", + ] null_default_fields = [] serialized = handler(self) @@ -123,21 +185,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedaccountingvendorcreditoutput.py b/src/panora_sdk/models/unifiedaccountingvendorcreditoutput.py index ab39379..50b8e68 100644 --- a/src/panora_sdk/models/unifiedaccountingvendorcreditoutput.py +++ b/src/panora_sdk/models/unifiedaccountingvendorcreditoutput.py @@ -3,31 +3,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedAccountingVendorcreditOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingVendorcreditOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedAccountingVendorcreditOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the vendor credit in the context of the 3rd Party""" - - + class UnifiedAccountingVendorcreditOutputRemoteData(BaseModel): r"""The remote data of the vendor credit in the context of the 3rd Party""" - - + class UnifiedAccountingVendorcreditOutputTypedDict(TypedDict): number: NotRequired[Nullable[str]] @@ -50,7 +52,9 @@ class UnifiedAccountingVendorcreditOutputTypedDict(TypedDict): r"""The UUID of the associated accounting period""" line_items: NotRequired[List[LineItemTypedDict]] r"""The line items associated with this vendor credit""" - field_mappings: NotRequired[Nullable[UnifiedAccountingVendorcreditOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedAccountingVendorcreditOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the vendor credit record""" @@ -62,50 +66,103 @@ class UnifiedAccountingVendorcreditOutputTypedDict(TypedDict): r"""The last modified date of the vendor credit""" remote_updated_at: NotRequired[Nullable[datetime]] r"""The date when the vendor credit was last updated in the remote system""" - remote_data: NotRequired[Nullable[UnifiedAccountingVendorcreditOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedAccountingVendorcreditOutputRemoteDataTypedDict] + ] r"""The remote data of the vendor credit in the context of the 3rd Party""" - + class UnifiedAccountingVendorcreditOutput(BaseModel): number: OptionalNullable[str] = UNSET r"""The number of the vendor credit""" + transaction_date: OptionalNullable[datetime] = UNSET r"""The date of the transaction""" + vendor: OptionalNullable[str] = UNSET r"""The UUID of the vendor associated with the credit""" + total_amount: OptionalNullable[str] = UNSET r"""The total amount of the vendor credit""" + currency: OptionalNullable[str] = UNSET r"""The currency of the vendor credit""" + exchange_rate: OptionalNullable[str] = UNSET r"""The exchange rate applied to the vendor credit""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the associated company""" + tracking_categories: OptionalNullable[List[str]] = UNSET r"""The UUID of the tracking categories associated with the vendor credit""" + accounting_period_id: OptionalNullable[str] = UNSET r"""The UUID of the associated accounting period""" + line_items: Optional[List[LineItem]] = None r"""The line items associated with this vendor credit""" - field_mappings: OptionalNullable[UnifiedAccountingVendorcreditOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[ + UnifiedAccountingVendorcreditOutputFieldMappings + ] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the vendor credit record""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the vendor credit""" + created_at: Optional[datetime] = None r"""The created date of the vendor credit""" + modified_at: Optional[datetime] = None r"""The last modified date of the vendor credit""" + remote_updated_at: OptionalNullable[datetime] = UNSET r"""The date when the vendor credit was last updated in the remote system""" + remote_data: OptionalNullable[UnifiedAccountingVendorcreditOutputRemoteData] = UNSET r"""The remote data of the vendor credit in the context of the 3rd Party""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["number", "transaction_date", "vendor", "total_amount", "currency", "exchange_rate", "company_id", "tracking_categories", "accounting_period_id", "line_items", "field_mappings", "id", "remote_id", "created_at", "modified_at", "remote_updated_at", "remote_data"] - nullable_fields = ["number", "transaction_date", "vendor", "total_amount", "currency", "exchange_rate", "company_id", "tracking_categories", "accounting_period_id", "field_mappings", "id", "remote_id", "remote_updated_at", "remote_data"] + optional_fields = [ + "number", + "transaction_date", + "vendor", + "total_amount", + "currency", + "exchange_rate", + "company_id", + "tracking_categories", + "accounting_period_id", + "line_items", + "field_mappings", + "id", + "remote_id", + "created_at", + "modified_at", + "remote_updated_at", + "remote_data", + ] + nullable_fields = [ + "number", + "transaction_date", + "vendor", + "total_amount", + "currency", + "exchange_rate", + "company_id", + "tracking_categories", + "accounting_period_id", + "field_mappings", + "id", + "remote_id", + "remote_updated_at", + "remote_data", + ] null_default_fields = [] serialized = handler(self) @@ -115,21 +172,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedatsactivityinput.py b/src/panora_sdk/models/unifiedatsactivityinput.py deleted file mode 100644 index 4344c9a..0000000 --- a/src/panora_sdk/models/unifiedatsactivityinput.py +++ /dev/null @@ -1,74 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsActivityInputTypedDict(TypedDict): - activity_type: NotRequired[Nullable[str]] - r"""The type of activity. NOTE, EMAIL or OTHER""" - subject: NotRequired[Nullable[str]] - r"""The subject of the activity""" - body: NotRequired[Nullable[str]] - r"""The body of the activity""" - visibility: NotRequired[Nullable[str]] - r"""The visibility of the activity. ADMIN_ONLY, PUBLIC or PRIVATE""" - candidate_id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the activity""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedAtsActivityInput(BaseModel): - activity_type: OptionalNullable[str] = UNSET - r"""The type of activity. NOTE, EMAIL or OTHER""" - subject: OptionalNullable[str] = UNSET - r"""The subject of the activity""" - body: OptionalNullable[str] = UNSET - r"""The body of the activity""" - visibility: OptionalNullable[str] = UNSET - r"""The visibility of the activity. ADMIN_ONLY, PUBLIC or PRIVATE""" - candidate_id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the activity""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["activity_type", "subject", "body", "visibility", "candidate_id", "remote_created_at", "field_mappings"] - nullable_fields = ["activity_type", "subject", "body", "visibility", "candidate_id", "remote_created_at", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsactivityoutput.py b/src/panora_sdk/models/unifiedatsactivityoutput.py deleted file mode 100644 index ccd4d36..0000000 --- a/src/panora_sdk/models/unifiedatsactivityoutput.py +++ /dev/null @@ -1,94 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsActivityOutputTypedDict(TypedDict): - activity_type: NotRequired[Nullable[str]] - r"""The type of activity. NOTE, EMAIL or OTHER""" - subject: NotRequired[Nullable[str]] - r"""The subject of the activity""" - body: NotRequired[Nullable[str]] - r"""The body of the activity""" - visibility: NotRequired[Nullable[str]] - r"""The visibility of the activity. ADMIN_ONLY, PUBLIC or PRIVATE""" - candidate_id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the activity""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the activity""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the activity in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the activity in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsActivityOutput(BaseModel): - activity_type: OptionalNullable[str] = UNSET - r"""The type of activity. NOTE, EMAIL or OTHER""" - subject: OptionalNullable[str] = UNSET - r"""The subject of the activity""" - body: OptionalNullable[str] = UNSET - r"""The body of the activity""" - visibility: OptionalNullable[str] = UNSET - r"""The visibility of the activity. ADMIN_ONLY, PUBLIC or PRIVATE""" - candidate_id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the activity""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the activity""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the activity in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the activity in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["activity_type", "subject", "body", "visibility", "candidate_id", "remote_created_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["activity_type", "subject", "body", "visibility", "candidate_id", "remote_created_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsapplicationinput.py b/src/panora_sdk/models/unifiedatsapplicationinput.py deleted file mode 100644 index 95c44f8..0000000 --- a/src/panora_sdk/models/unifiedatsapplicationinput.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, List, Optional, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsApplicationInputTypedDict(TypedDict): - applied_at: NotRequired[Nullable[datetime]] - r"""The application date""" - rejected_at: NotRequired[Nullable[datetime]] - r"""The rejection date""" - offers: NotRequired[Nullable[List[str]]] - r"""The offers UUIDs for the application""" - source: NotRequired[Nullable[str]] - r"""The source of the application""" - credited_to: NotRequired[Nullable[str]] - r"""The UUID of the person credited for the application""" - current_stage: NotRequired[Nullable[str]] - r"""The UUID of the current stage of the application""" - reject_reason: NotRequired[Nullable[str]] - r"""The rejection reason for the application""" - candidate_id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - job_id: NotRequired[str] - r"""The UUID of the job""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedAtsApplicationInput(BaseModel): - applied_at: OptionalNullable[datetime] = UNSET - r"""The application date""" - rejected_at: OptionalNullable[datetime] = UNSET - r"""The rejection date""" - offers: OptionalNullable[List[str]] = UNSET - r"""The offers UUIDs for the application""" - source: OptionalNullable[str] = UNSET - r"""The source of the application""" - credited_to: OptionalNullable[str] = UNSET - r"""The UUID of the person credited for the application""" - current_stage: OptionalNullable[str] = UNSET - r"""The UUID of the current stage of the application""" - reject_reason: OptionalNullable[str] = UNSET - r"""The rejection reason for the application""" - candidate_id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - job_id: Optional[str] = None - r"""The UUID of the job""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["applied_at", "rejected_at", "offers", "source", "credited_to", "current_stage", "reject_reason", "candidate_id", "job_id", "field_mappings"] - nullable_fields = ["applied_at", "rejected_at", "offers", "source", "credited_to", "current_stage", "reject_reason", "candidate_id", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsapplicationoutput.py b/src/panora_sdk/models/unifiedatsapplicationoutput.py deleted file mode 100644 index 54e4164..0000000 --- a/src/panora_sdk/models/unifiedatsapplicationoutput.py +++ /dev/null @@ -1,114 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, List, Optional, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsApplicationOutputTypedDict(TypedDict): - applied_at: NotRequired[Nullable[datetime]] - r"""The application date""" - rejected_at: NotRequired[Nullable[datetime]] - r"""The rejection date""" - offers: NotRequired[Nullable[List[str]]] - r"""The offers UUIDs for the application""" - source: NotRequired[Nullable[str]] - r"""The source of the application""" - credited_to: NotRequired[Nullable[str]] - r"""The UUID of the person credited for the application""" - current_stage: NotRequired[Nullable[str]] - r"""The UUID of the current stage of the application""" - reject_reason: NotRequired[Nullable[str]] - r"""The rejection reason for the application""" - candidate_id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - job_id: NotRequired[str] - r"""The UUID of the job""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the application""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the application in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the application in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote created date of the object""" - remote_modified_at: NotRequired[Nullable[datetime]] - r"""The remote modified date of the object""" - - -class UnifiedAtsApplicationOutput(BaseModel): - applied_at: OptionalNullable[datetime] = UNSET - r"""The application date""" - rejected_at: OptionalNullable[datetime] = UNSET - r"""The rejection date""" - offers: OptionalNullable[List[str]] = UNSET - r"""The offers UUIDs for the application""" - source: OptionalNullable[str] = UNSET - r"""The source of the application""" - credited_to: OptionalNullable[str] = UNSET - r"""The UUID of the person credited for the application""" - current_stage: OptionalNullable[str] = UNSET - r"""The UUID of the current stage of the application""" - reject_reason: OptionalNullable[str] = UNSET - r"""The rejection reason for the application""" - candidate_id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - job_id: Optional[str] = None - r"""The UUID of the job""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the application""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the application in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the application in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote created date of the object""" - remote_modified_at: OptionalNullable[datetime] = UNSET - r"""The remote modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["applied_at", "rejected_at", "offers", "source", "credited_to", "current_stage", "reject_reason", "candidate_id", "job_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at", "remote_created_at", "remote_modified_at"] - nullable_fields = ["applied_at", "rejected_at", "offers", "source", "credited_to", "current_stage", "reject_reason", "candidate_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at", "remote_created_at", "remote_modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsattachmentinput.py b/src/panora_sdk/models/unifiedatsattachmentinput.py deleted file mode 100644 index 2e02da1..0000000 --- a/src/panora_sdk/models/unifiedatsattachmentinput.py +++ /dev/null @@ -1,74 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsAttachmentInputTypedDict(TypedDict): - file_url: NotRequired[Nullable[str]] - r"""The URL of the file""" - file_name: NotRequired[Nullable[str]] - r"""The name of the file""" - attachment_type: NotRequired[Nullable[str]] - r"""The type of the file""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the attachment""" - remote_modified_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the attachment""" - candidate_id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedAtsAttachmentInput(BaseModel): - file_url: OptionalNullable[str] = UNSET - r"""The URL of the file""" - file_name: OptionalNullable[str] = UNSET - r"""The name of the file""" - attachment_type: OptionalNullable[str] = UNSET - r"""The type of the file""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the attachment""" - remote_modified_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the attachment""" - candidate_id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["file_url", "file_name", "attachment_type", "remote_created_at", "remote_modified_at", "candidate_id", "field_mappings"] - nullable_fields = ["file_url", "file_name", "attachment_type", "remote_created_at", "remote_modified_at", "candidate_id", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsattachmentoutput.py b/src/panora_sdk/models/unifiedatsattachmentoutput.py deleted file mode 100644 index afec5ec..0000000 --- a/src/panora_sdk/models/unifiedatsattachmentoutput.py +++ /dev/null @@ -1,94 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsAttachmentOutputTypedDict(TypedDict): - file_url: NotRequired[Nullable[str]] - r"""The URL of the file""" - file_name: NotRequired[Nullable[str]] - r"""The name of the file""" - attachment_type: NotRequired[Nullable[str]] - r"""The type of the file""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the attachment""" - remote_modified_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the attachment""" - candidate_id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the attachment""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the attachment""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the attachment in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsAttachmentOutput(BaseModel): - file_url: OptionalNullable[str] = UNSET - r"""The URL of the file""" - file_name: OptionalNullable[str] = UNSET - r"""The name of the file""" - attachment_type: OptionalNullable[str] = UNSET - r"""The type of the file""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the attachment""" - remote_modified_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the attachment""" - candidate_id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the attachment""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the attachment""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the attachment in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["file_url", "file_name", "attachment_type", "remote_created_at", "remote_modified_at", "candidate_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["file_url", "file_name", "attachment_type", "remote_created_at", "remote_modified_at", "candidate_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatscandidateinput.py b/src/panora_sdk/models/unifiedatscandidateinput.py deleted file mode 100644 index 94cedcd..0000000 --- a/src/panora_sdk/models/unifiedatscandidateinput.py +++ /dev/null @@ -1,138 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .email import Email, EmailTypedDict -from .phone import Phone, PhoneTypedDict -from .unifiedatsapplicationoutput import UnifiedAtsApplicationOutput, UnifiedAtsApplicationOutputTypedDict -from .unifiedatsattachmentoutput import UnifiedAtsAttachmentOutput, UnifiedAtsAttachmentOutputTypedDict -from .unifiedatstagoutput import UnifiedAtsTagOutput, UnifiedAtsTagOutputTypedDict -from .url import URL, URLTypedDict -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict, Union -from typing_extensions import NotRequired - - -class UnifiedAtsCandidateInputTypedDict(TypedDict): - first_name: NotRequired[Nullable[str]] - r"""The first name of the candidate""" - last_name: NotRequired[Nullable[str]] - r"""The last name of the candidate""" - company: NotRequired[Nullable[str]] - r"""The company of the candidate""" - title: NotRequired[Nullable[str]] - r"""The title of the candidate""" - locations: NotRequired[Nullable[str]] - r"""The locations of the candidate""" - is_private: NotRequired[Nullable[bool]] - r"""Whether the candidate is private""" - email_reachable: NotRequired[Nullable[bool]] - r"""Whether the candidate is reachable by email""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the candidate""" - remote_modified_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the candidate""" - last_interaction_at: NotRequired[Nullable[datetime]] - r"""The last interaction date with the candidate""" - attachments: NotRequired[Nullable[List[UnifiedAtsCandidateInputAttachmentsTypedDict]]] - r"""The attachments UUIDs of the candidate""" - applications: NotRequired[Nullable[List[UnifiedAtsCandidateInputApplicationsTypedDict]]] - r"""The applications UUIDs of the candidate""" - tags: NotRequired[Nullable[List[UnifiedAtsCandidateInputTagsTypedDict]]] - r"""The tags of the candidate""" - urls: NotRequired[Nullable[List[URLTypedDict]]] - r"""The urls of the candidate, possible values for Url type are WEBSITE, BLOG, LINKEDIN, GITHUB, or OTHER""" - phone_numbers: NotRequired[Nullable[List[PhoneTypedDict]]] - r"""The phone numbers of the candidate""" - email_addresses: NotRequired[Nullable[List[EmailTypedDict]]] - r"""The email addresses of the candidate""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedAtsCandidateInput(BaseModel): - first_name: OptionalNullable[str] = UNSET - r"""The first name of the candidate""" - last_name: OptionalNullable[str] = UNSET - r"""The last name of the candidate""" - company: OptionalNullable[str] = UNSET - r"""The company of the candidate""" - title: OptionalNullable[str] = UNSET - r"""The title of the candidate""" - locations: OptionalNullable[str] = UNSET - r"""The locations of the candidate""" - is_private: OptionalNullable[bool] = UNSET - r"""Whether the candidate is private""" - email_reachable: OptionalNullable[bool] = UNSET - r"""Whether the candidate is reachable by email""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the candidate""" - remote_modified_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the candidate""" - last_interaction_at: OptionalNullable[datetime] = UNSET - r"""The last interaction date with the candidate""" - attachments: OptionalNullable[List[UnifiedAtsCandidateInputAttachments]] = UNSET - r"""The attachments UUIDs of the candidate""" - applications: OptionalNullable[List[UnifiedAtsCandidateInputApplications]] = UNSET - r"""The applications UUIDs of the candidate""" - tags: OptionalNullable[List[UnifiedAtsCandidateInputTags]] = UNSET - r"""The tags of the candidate""" - urls: OptionalNullable[List[URL]] = UNSET - r"""The urls of the candidate, possible values for Url type are WEBSITE, BLOG, LINKEDIN, GITHUB, or OTHER""" - phone_numbers: OptionalNullable[List[Phone]] = UNSET - r"""The phone numbers of the candidate""" - email_addresses: OptionalNullable[List[Email]] = UNSET - r"""The email addresses of the candidate""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["first_name", "last_name", "company", "title", "locations", "is_private", "email_reachable", "remote_created_at", "remote_modified_at", "last_interaction_at", "attachments", "applications", "tags", "urls", "phone_numbers", "email_addresses", "field_mappings"] - nullable_fields = ["first_name", "last_name", "company", "title", "locations", "is_private", "email_reachable", "remote_created_at", "remote_modified_at", "last_interaction_at", "attachments", "applications", "tags", "urls", "phone_numbers", "email_addresses", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -UnifiedAtsCandidateInputAttachmentsTypedDict = Union[UnifiedAtsAttachmentOutputTypedDict, str] - - -UnifiedAtsCandidateInputAttachments = Union[UnifiedAtsAttachmentOutput, str] - - -UnifiedAtsCandidateInputApplicationsTypedDict = Union[UnifiedAtsApplicationOutputTypedDict, str] - - -UnifiedAtsCandidateInputApplications = Union[UnifiedAtsApplicationOutput, str] - - -UnifiedAtsCandidateInputTagsTypedDict = Union[UnifiedAtsTagOutputTypedDict, str] - - -UnifiedAtsCandidateInputTags = Union[UnifiedAtsTagOutput, str] - diff --git a/src/panora_sdk/models/unifiedatscandidateoutput.py b/src/panora_sdk/models/unifiedatscandidateoutput.py deleted file mode 100644 index bf51368..0000000 --- a/src/panora_sdk/models/unifiedatscandidateoutput.py +++ /dev/null @@ -1,158 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .email import Email, EmailTypedDict -from .phone import Phone, PhoneTypedDict -from .unifiedatsapplicationoutput import UnifiedAtsApplicationOutput, UnifiedAtsApplicationOutputTypedDict -from .unifiedatsattachmentoutput import UnifiedAtsAttachmentOutput, UnifiedAtsAttachmentOutputTypedDict -from .unifiedatstagoutput import UnifiedAtsTagOutput, UnifiedAtsTagOutputTypedDict -from .url import URL, URLTypedDict -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict, Union -from typing_extensions import NotRequired - - -class UnifiedAtsCandidateOutputTypedDict(TypedDict): - first_name: NotRequired[Nullable[str]] - r"""The first name of the candidate""" - last_name: NotRequired[Nullable[str]] - r"""The last name of the candidate""" - company: NotRequired[Nullable[str]] - r"""The company of the candidate""" - title: NotRequired[Nullable[str]] - r"""The title of the candidate""" - locations: NotRequired[Nullable[str]] - r"""The locations of the candidate""" - is_private: NotRequired[Nullable[bool]] - r"""Whether the candidate is private""" - email_reachable: NotRequired[Nullable[bool]] - r"""Whether the candidate is reachable by email""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the candidate""" - remote_modified_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the candidate""" - last_interaction_at: NotRequired[Nullable[datetime]] - r"""The last interaction date with the candidate""" - attachments: NotRequired[Nullable[List[UnifiedAtsCandidateOutputAttachmentsTypedDict]]] - r"""The attachments UUIDs of the candidate""" - applications: NotRequired[Nullable[List[ApplicationsModelTypedDict]]] - r"""The applications UUIDs of the candidate""" - tags: NotRequired[Nullable[List[UnifiedAtsCandidateOutputTagsTypedDict]]] - r"""The tags of the candidate""" - urls: NotRequired[Nullable[List[URLTypedDict]]] - r"""The urls of the candidate, possible values for Url type are WEBSITE, BLOG, LINKEDIN, GITHUB, or OTHER""" - phone_numbers: NotRequired[Nullable[List[PhoneTypedDict]]] - r"""The phone numbers of the candidate""" - email_addresses: NotRequired[Nullable[List[EmailTypedDict]]] - r"""The email addresses of the candidate""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - remote_id: NotRequired[Nullable[str]] - r"""The id of the candidate in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the candidate in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsCandidateOutput(BaseModel): - first_name: OptionalNullable[str] = UNSET - r"""The first name of the candidate""" - last_name: OptionalNullable[str] = UNSET - r"""The last name of the candidate""" - company: OptionalNullable[str] = UNSET - r"""The company of the candidate""" - title: OptionalNullable[str] = UNSET - r"""The title of the candidate""" - locations: OptionalNullable[str] = UNSET - r"""The locations of the candidate""" - is_private: OptionalNullable[bool] = UNSET - r"""Whether the candidate is private""" - email_reachable: OptionalNullable[bool] = UNSET - r"""Whether the candidate is reachable by email""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the candidate""" - remote_modified_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the candidate""" - last_interaction_at: OptionalNullable[datetime] = UNSET - r"""The last interaction date with the candidate""" - attachments: OptionalNullable[List[UnifiedAtsCandidateOutputAttachments]] = UNSET - r"""The attachments UUIDs of the candidate""" - applications: OptionalNullable[List[ApplicationsModel]] = UNSET - r"""The applications UUIDs of the candidate""" - tags: OptionalNullable[List[UnifiedAtsCandidateOutputTags]] = UNSET - r"""The tags of the candidate""" - urls: OptionalNullable[List[URL]] = UNSET - r"""The urls of the candidate, possible values for Url type are WEBSITE, BLOG, LINKEDIN, GITHUB, or OTHER""" - phone_numbers: OptionalNullable[List[Phone]] = UNSET - r"""The phone numbers of the candidate""" - email_addresses: OptionalNullable[List[Email]] = UNSET - r"""The email addresses of the candidate""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - remote_id: OptionalNullable[str] = UNSET - r"""The id of the candidate in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the candidate in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["first_name", "last_name", "company", "title", "locations", "is_private", "email_reachable", "remote_created_at", "remote_modified_at", "last_interaction_at", "attachments", "applications", "tags", "urls", "phone_numbers", "email_addresses", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["first_name", "last_name", "company", "title", "locations", "is_private", "email_reachable", "remote_created_at", "remote_modified_at", "last_interaction_at", "attachments", "applications", "tags", "urls", "phone_numbers", "email_addresses", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - - -UnifiedAtsCandidateOutputAttachmentsTypedDict = Union[UnifiedAtsAttachmentOutputTypedDict, str] - - -UnifiedAtsCandidateOutputAttachments = Union[UnifiedAtsAttachmentOutput, str] - - -ApplicationsModelTypedDict = Union[UnifiedAtsApplicationOutputTypedDict, str] - - -ApplicationsModel = Union[UnifiedAtsApplicationOutput, str] - - -UnifiedAtsCandidateOutputTagsTypedDict = Union[UnifiedAtsTagOutputTypedDict, str] - - -UnifiedAtsCandidateOutputTags = Union[UnifiedAtsTagOutput, str] - diff --git a/src/panora_sdk/models/unifiedatsdepartmentoutput.py b/src/panora_sdk/models/unifiedatsdepartmentoutput.py deleted file mode 100644 index 02a5cc9..0000000 --- a/src/panora_sdk/models/unifiedatsdepartmentoutput.py +++ /dev/null @@ -1,74 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsDepartmentOutputTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the department""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the department""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the department in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the department in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsDepartmentOutput(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the department""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the department""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the department in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the department in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatseeocsoutput.py b/src/panora_sdk/models/unifiedatseeocsoutput.py deleted file mode 100644 index 9725928..0000000 --- a/src/panora_sdk/models/unifiedatseeocsoutput.py +++ /dev/null @@ -1,94 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsEeocsOutputTypedDict(TypedDict): - candidate_id: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - submitted_at: NotRequired[Nullable[datetime]] - r"""The submission date of the EEOC""" - race: NotRequired[Nullable[str]] - r"""The race of the candidate""" - gender: NotRequired[Nullable[str]] - r"""The gender of the candidate""" - veteran_status: NotRequired[Nullable[str]] - r"""The veteran status of the candidate""" - disability_status: NotRequired[Nullable[str]] - r"""The disability status of the candidate""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the EEOC""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the EEOC in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the EEOC in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsEeocsOutput(BaseModel): - candidate_id: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - submitted_at: OptionalNullable[datetime] = UNSET - r"""The submission date of the EEOC""" - race: OptionalNullable[str] = UNSET - r"""The race of the candidate""" - gender: OptionalNullable[str] = UNSET - r"""The gender of the candidate""" - veteran_status: OptionalNullable[str] = UNSET - r"""The veteran status of the candidate""" - disability_status: OptionalNullable[str] = UNSET - r"""The disability status of the candidate""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the EEOC""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the EEOC in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the EEOC in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["candidate_id", "submitted_at", "race", "gender", "veteran_status", "disability_status", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["candidate_id", "submitted_at", "race", "gender", "veteran_status", "disability_status", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsinterviewinput.py b/src/panora_sdk/models/unifiedatsinterviewinput.py deleted file mode 100644 index edd54c5..0000000 --- a/src/panora_sdk/models/unifiedatsinterviewinput.py +++ /dev/null @@ -1,90 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsInterviewInputTypedDict(TypedDict): - status: NotRequired[Nullable[str]] - r"""The status of the interview""" - application_id: NotRequired[Nullable[str]] - r"""The UUID of the application""" - job_interview_stage_id: NotRequired[Nullable[str]] - r"""The UUID of the job interview stage""" - organized_by: NotRequired[Nullable[str]] - r"""The UUID of the organizer""" - interviewers: NotRequired[Nullable[List[str]]] - r"""The UUIDs of the interviewers""" - location: NotRequired[Nullable[str]] - r"""The location of the interview""" - start_at: NotRequired[Nullable[datetime]] - r"""The start date and time of the interview""" - end_at: NotRequired[Nullable[datetime]] - r"""The end date and time of the interview""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the interview""" - remote_updated_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the interview""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedAtsInterviewInput(BaseModel): - status: OptionalNullable[str] = UNSET - r"""The status of the interview""" - application_id: OptionalNullable[str] = UNSET - r"""The UUID of the application""" - job_interview_stage_id: OptionalNullable[str] = UNSET - r"""The UUID of the job interview stage""" - organized_by: OptionalNullable[str] = UNSET - r"""The UUID of the organizer""" - interviewers: OptionalNullable[List[str]] = UNSET - r"""The UUIDs of the interviewers""" - location: OptionalNullable[str] = UNSET - r"""The location of the interview""" - start_at: OptionalNullable[datetime] = UNSET - r"""The start date and time of the interview""" - end_at: OptionalNullable[datetime] = UNSET - r"""The end date and time of the interview""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the interview""" - remote_updated_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the interview""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["status", "application_id", "job_interview_stage_id", "organized_by", "interviewers", "location", "start_at", "end_at", "remote_created_at", "remote_updated_at", "field_mappings"] - nullable_fields = ["status", "application_id", "job_interview_stage_id", "organized_by", "interviewers", "location", "start_at", "end_at", "remote_created_at", "remote_updated_at", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsinterviewoutput.py b/src/panora_sdk/models/unifiedatsinterviewoutput.py deleted file mode 100644 index e707ad0..0000000 --- a/src/panora_sdk/models/unifiedatsinterviewoutput.py +++ /dev/null @@ -1,110 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsInterviewOutputTypedDict(TypedDict): - status: NotRequired[Nullable[str]] - r"""The status of the interview""" - application_id: NotRequired[Nullable[str]] - r"""The UUID of the application""" - job_interview_stage_id: NotRequired[Nullable[str]] - r"""The UUID of the job interview stage""" - organized_by: NotRequired[Nullable[str]] - r"""The UUID of the organizer""" - interviewers: NotRequired[Nullable[List[str]]] - r"""The UUIDs of the interviewers""" - location: NotRequired[Nullable[str]] - r"""The location of the interview""" - start_at: NotRequired[Nullable[datetime]] - r"""The start date and time of the interview""" - end_at: NotRequired[Nullable[datetime]] - r"""The end date and time of the interview""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the interview""" - remote_updated_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the interview""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the interview""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the interview in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the interview in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsInterviewOutput(BaseModel): - status: OptionalNullable[str] = UNSET - r"""The status of the interview""" - application_id: OptionalNullable[str] = UNSET - r"""The UUID of the application""" - job_interview_stage_id: OptionalNullable[str] = UNSET - r"""The UUID of the job interview stage""" - organized_by: OptionalNullable[str] = UNSET - r"""The UUID of the organizer""" - interviewers: OptionalNullable[List[str]] = UNSET - r"""The UUIDs of the interviewers""" - location: OptionalNullable[str] = UNSET - r"""The location of the interview""" - start_at: OptionalNullable[datetime] = UNSET - r"""The start date and time of the interview""" - end_at: OptionalNullable[datetime] = UNSET - r"""The end date and time of the interview""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the interview""" - remote_updated_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the interview""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the interview""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the interview in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the interview in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["status", "application_id", "job_interview_stage_id", "organized_by", "interviewers", "location", "start_at", "end_at", "remote_created_at", "remote_updated_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["status", "application_id", "job_interview_stage_id", "organized_by", "interviewers", "location", "start_at", "end_at", "remote_created_at", "remote_updated_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsjobinterviewstageoutput.py b/src/panora_sdk/models/unifiedatsjobinterviewstageoutput.py deleted file mode 100644 index e508a53..0000000 --- a/src/panora_sdk/models/unifiedatsjobinterviewstageoutput.py +++ /dev/null @@ -1,82 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsJobinterviewstageOutputTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the job interview stage""" - stage_order: NotRequired[Nullable[float]] - r"""The order of the stage""" - job_id: NotRequired[Nullable[str]] - r"""The UUID of the job""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the job interview stage""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the job interview stage in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the job interview stage in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsJobinterviewstageOutput(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the job interview stage""" - stage_order: OptionalNullable[float] = UNSET - r"""The order of the stage""" - job_id: OptionalNullable[str] = UNSET - r"""The UUID of the job""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the job interview stage""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the job interview stage in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the job interview stage in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "stage_order", "job_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "stage_order", "job_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsjoboutput.py b/src/panora_sdk/models/unifiedatsjoboutput.py deleted file mode 100644 index 29e20f4..0000000 --- a/src/panora_sdk/models/unifiedatsjoboutput.py +++ /dev/null @@ -1,118 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsJobOutputTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the job""" - description: NotRequired[Nullable[str]] - r"""The description of the job""" - code: NotRequired[Nullable[str]] - r"""The code of the job""" - status: NotRequired[Nullable[str]] - r"""The status of the job""" - type: NotRequired[Nullable[str]] - r"""The type of the job""" - confidential: NotRequired[Nullable[bool]] - r"""Whether the job is confidential""" - departments: NotRequired[Nullable[List[str]]] - r"""The departments UUIDs associated with the job""" - offices: NotRequired[Nullable[List[str]]] - r"""The offices UUIDs associated with the job""" - managers: NotRequired[Nullable[List[str]]] - r"""The managers UUIDs associated with the job""" - recruiters: NotRequired[Nullable[List[str]]] - r"""The recruiters UUIDs associated with the job""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the job""" - remote_updated_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the job""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the job""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the job in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the job in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsJobOutput(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the job""" - description: OptionalNullable[str] = UNSET - r"""The description of the job""" - code: OptionalNullable[str] = UNSET - r"""The code of the job""" - status: OptionalNullable[str] = UNSET - r"""The status of the job""" - type: OptionalNullable[str] = UNSET - r"""The type of the job""" - confidential: OptionalNullable[bool] = UNSET - r"""Whether the job is confidential""" - departments: OptionalNullable[List[str]] = UNSET - r"""The departments UUIDs associated with the job""" - offices: OptionalNullable[List[str]] = UNSET - r"""The offices UUIDs associated with the job""" - managers: OptionalNullable[List[str]] = UNSET - r"""The managers UUIDs associated with the job""" - recruiters: OptionalNullable[List[str]] = UNSET - r"""The recruiters UUIDs associated with the job""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the job""" - remote_updated_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the job""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the job""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the job in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the job in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "description", "code", "status", "type", "confidential", "departments", "offices", "managers", "recruiters", "remote_created_at", "remote_updated_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "description", "code", "status", "type", "confidential", "departments", "offices", "managers", "recruiters", "remote_created_at", "remote_updated_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsofferoutput.py b/src/panora_sdk/models/unifiedatsofferoutput.py deleted file mode 100644 index 57d9e12..0000000 --- a/src/panora_sdk/models/unifiedatsofferoutput.py +++ /dev/null @@ -1,118 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsOfferOutputCreatedAtTypedDict(TypedDict): - r"""The created date of the object""" - - - -class UnifiedAtsOfferOutputCreatedAt(BaseModel): - r"""The created date of the object""" - - - -class UnifiedAtsOfferOutputModifiedAtTypedDict(TypedDict): - r"""The modified date of the object""" - - - -class UnifiedAtsOfferOutputModifiedAt(BaseModel): - r"""The modified date of the object""" - - - -class UnifiedAtsOfferOutputTypedDict(TypedDict): - created_by: NotRequired[Nullable[str]] - r"""The UUID of the creator""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the offer""" - closed_at: NotRequired[Nullable[datetime]] - r"""The closing date of the offer""" - sent_at: NotRequired[Nullable[datetime]] - r"""The sending date of the offer""" - start_date: NotRequired[Nullable[datetime]] - r"""The start date of the offer""" - status: NotRequired[Nullable[str]] - r"""The status of the offer""" - application_id: NotRequired[Nullable[str]] - r"""The UUID of the application""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the offer""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the offer in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the offer in the context of the 3rd Party""" - created_at: NotRequired[Nullable[UnifiedAtsOfferOutputCreatedAtTypedDict]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[UnifiedAtsOfferOutputModifiedAtTypedDict]] - r"""The modified date of the object""" - - -class UnifiedAtsOfferOutput(BaseModel): - created_by: OptionalNullable[str] = UNSET - r"""The UUID of the creator""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the offer""" - closed_at: OptionalNullable[datetime] = UNSET - r"""The closing date of the offer""" - sent_at: OptionalNullable[datetime] = UNSET - r"""The sending date of the offer""" - start_date: OptionalNullable[datetime] = UNSET - r"""The start date of the offer""" - status: OptionalNullable[str] = UNSET - r"""The status of the offer""" - application_id: OptionalNullable[str] = UNSET - r"""The UUID of the application""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the offer""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the offer in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the offer in the context of the 3rd Party""" - created_at: OptionalNullable[UnifiedAtsOfferOutputCreatedAt] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[UnifiedAtsOfferOutputModifiedAt] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["created_by", "remote_created_at", "closed_at", "sent_at", "start_date", "status", "application_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["created_by", "remote_created_at", "closed_at", "sent_at", "start_date", "status", "application_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsofficeoutput.py b/src/panora_sdk/models/unifiedatsofficeoutput.py deleted file mode 100644 index f556354..0000000 --- a/src/panora_sdk/models/unifiedatsofficeoutput.py +++ /dev/null @@ -1,78 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, Optional, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsOfficeOutputTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the office""" - location: NotRequired[Nullable[str]] - r"""The location of the office""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[str] - r"""The UUID of the office""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the office in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the office in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsOfficeOutput(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the office""" - location: OptionalNullable[str] = UNSET - r"""The location of the office""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: Optional[str] = None - r"""The UUID of the office""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the office in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the office in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "location", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "location", "field_mappings", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsrejectreasonoutput.py b/src/panora_sdk/models/unifiedatsrejectreasonoutput.py deleted file mode 100644 index c6ddbf2..0000000 --- a/src/panora_sdk/models/unifiedatsrejectreasonoutput.py +++ /dev/null @@ -1,74 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsRejectreasonOutputTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the reject reason""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the reject reason""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the reject reason in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the reject reason in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsRejectreasonOutput(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the reject reason""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the reject reason""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the reject reason in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the reject reason in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsscorecardoutput.py b/src/panora_sdk/models/unifiedatsscorecardoutput.py deleted file mode 100644 index 4ea2fbe..0000000 --- a/src/panora_sdk/models/unifiedatsscorecardoutput.py +++ /dev/null @@ -1,90 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, Optional, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsScorecardOutputTypedDict(TypedDict): - overall_recommendation: NotRequired[Nullable[str]] - r"""The overall recommendation""" - application_id: NotRequired[Nullable[str]] - r"""The UUID of the application""" - interview_id: NotRequired[Nullable[str]] - r"""The UUID of the interview""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the scorecard""" - submitted_at: NotRequired[Nullable[datetime]] - r"""The submission date of the scorecard""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[str] - r"""The UUID of the scorecard""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the scorecard in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the scorecard in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsScorecardOutput(BaseModel): - overall_recommendation: OptionalNullable[str] = UNSET - r"""The overall recommendation""" - application_id: OptionalNullable[str] = UNSET - r"""The UUID of the application""" - interview_id: OptionalNullable[str] = UNSET - r"""The UUID of the interview""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the scorecard""" - submitted_at: OptionalNullable[datetime] = UNSET - r"""The submission date of the scorecard""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: Optional[str] = None - r"""The UUID of the scorecard""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the scorecard in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the scorecard in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["overall_recommendation", "application_id", "interview_id", "remote_created_at", "submitted_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["overall_recommendation", "application_id", "interview_id", "remote_created_at", "submitted_at", "field_mappings", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatstagoutput.py b/src/panora_sdk/models/unifiedatstagoutput.py deleted file mode 100644 index 356f140..0000000 --- a/src/panora_sdk/models/unifiedatstagoutput.py +++ /dev/null @@ -1,78 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsTagOutputTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the tag""" - id_ats_candidate: NotRequired[Nullable[str]] - r"""The UUID of the candidate""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the tag""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the tag in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the tag in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The creation date of the tag""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modification date of the tag""" - - -class UnifiedAtsTagOutput(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the tag""" - id_ats_candidate: OptionalNullable[str] = UNSET - r"""The UUID of the candidate""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the tag""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the tag in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the tag in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The creation date of the tag""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modification date of the tag""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "id_ats_candidate", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "id_ats_candidate", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedatsuseroutput.py b/src/panora_sdk/models/unifiedatsuseroutput.py deleted file mode 100644 index 39b162a..0000000 --- a/src/panora_sdk/models/unifiedatsuseroutput.py +++ /dev/null @@ -1,98 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired - - -class UnifiedAtsUserOutputTypedDict(TypedDict): - first_name: NotRequired[Nullable[str]] - r"""The first name of the user""" - last_name: NotRequired[Nullable[str]] - r"""The last name of the user""" - email: NotRequired[Nullable[str]] - r"""The email of the user""" - disabled: NotRequired[Nullable[bool]] - r"""Whether the user is disabled""" - access_role: NotRequired[Nullable[str]] - r"""The access role of the user""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The remote creation date of the user""" - remote_modified_at: NotRequired[Nullable[datetime]] - r"""The remote modification date of the user""" - field_mappings: NotRequired[Nullable[Dict[str, Any]]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the user""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the user in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[Dict[str, Any]]] - r"""The remote data of the user in the context of the 3rd Party""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the object""" - modified_at: NotRequired[Nullable[datetime]] - r"""The modified date of the object""" - - -class UnifiedAtsUserOutput(BaseModel): - first_name: OptionalNullable[str] = UNSET - r"""The first name of the user""" - last_name: OptionalNullable[str] = UNSET - r"""The last name of the user""" - email: OptionalNullable[str] = UNSET - r"""The email of the user""" - disabled: OptionalNullable[bool] = UNSET - r"""Whether the user is disabled""" - access_role: OptionalNullable[str] = UNSET - r"""The access role of the user""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The remote creation date of the user""" - remote_modified_at: OptionalNullable[datetime] = UNSET - r"""The remote modification date of the user""" - field_mappings: OptionalNullable[Dict[str, Any]] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the user""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the user in the context of the 3rd Party""" - remote_data: OptionalNullable[Dict[str, Any]] = UNSET - r"""The remote data of the user in the context of the 3rd Party""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the object""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The modified date of the object""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["first_name", "last_name", "email", "disabled", "access_role", "remote_created_at", "remote_modified_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["first_name", "last_name", "email", "disabled", "access_role", "remote_created_at", "remote_modified_at", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedcrmcompanyinput.py b/src/panora_sdk/models/unifiedcrmcompanyinput.py index 6eccad6..ce7207c 100644 --- a/src/panora_sdk/models/unifiedcrmcompanyinput.py +++ b/src/panora_sdk/models/unifiedcrmcompanyinput.py @@ -4,10 +4,16 @@ from .address import Address, AddressTypedDict from .email import Email, EmailTypedDict from .phone import Phone, PhoneTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class UnifiedCrmCompanyInputTypedDict(TypedDict): @@ -27,30 +33,54 @@ class UnifiedCrmCompanyInputTypedDict(TypedDict): r"""The phone numbers of the company""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the company between the remote 3rd party & Panora""" - + class UnifiedCrmCompanyInput(BaseModel): name: Nullable[str] r"""The name of the company""" + industry: OptionalNullable[str] = UNSET r"""The industry of the company. Authorized values can be found in the Industry enum.""" + number_of_employees: OptionalNullable[float] = UNSET r"""The number of employees of the company""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user who owns the company""" + email_addresses: OptionalNullable[List[Email]] = UNSET r"""The email addresses of the company""" + addresses: OptionalNullable[List[Address]] = UNSET r"""The addresses of the company""" + phone_numbers: OptionalNullable[List[Phone]] = UNSET r"""The phone numbers of the company""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the company between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["industry", "number_of_employees", "user_id", "email_addresses", "addresses", "phone_numbers", "field_mappings"] - nullable_fields = ["name", "industry", "number_of_employees", "user_id", "email_addresses", "addresses", "phone_numbers", "field_mappings"] + optional_fields = [ + "industry", + "number_of_employees", + "user_id", + "email_addresses", + "addresses", + "phone_numbers", + "field_mappings", + ] + nullable_fields = [ + "name", + "industry", + "number_of_employees", + "user_id", + "email_addresses", + "addresses", + "phone_numbers", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -60,21 +90,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmcompanyoutput.py b/src/panora_sdk/models/unifiedcrmcompanyoutput.py index f212aa9..3effc58 100644 --- a/src/panora_sdk/models/unifiedcrmcompanyoutput.py +++ b/src/panora_sdk/models/unifiedcrmcompanyoutput.py @@ -4,31 +4,33 @@ from .address import Address, AddressTypedDict from .email import Email, EmailTypedDict from .phone import Phone, PhoneTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class CreatedAtTypedDict(TypedDict): r"""The created date of the object""" - - + class CreatedAt(BaseModel): r"""The created date of the object""" - - + class ModifiedAtTypedDict(TypedDict): r"""The modified date of the object""" - - + class ModifiedAt(BaseModel): r"""The modified date of the object""" - - + class UnifiedCrmCompanyOutputTypedDict(TypedDict): name: Nullable[str] @@ -57,40 +59,79 @@ class UnifiedCrmCompanyOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[ModifiedAtTypedDict]] r"""The modified date of the object""" - + class UnifiedCrmCompanyOutput(BaseModel): name: Nullable[str] r"""The name of the company""" + industry: OptionalNullable[str] = UNSET r"""The industry of the company. Authorized values can be found in the Industry enum.""" + number_of_employees: OptionalNullable[float] = UNSET r"""The number of employees of the company""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user who owns the company""" + email_addresses: OptionalNullable[List[Email]] = UNSET r"""The email addresses of the company""" + addresses: OptionalNullable[List[Address]] = UNSET r"""The addresses of the company""" + phone_numbers: OptionalNullable[List[Phone]] = UNSET r"""The phone numbers of the company""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the company between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the company""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the company in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the company in the context of the Crm 3rd Party""" + created_at: OptionalNullable[CreatedAt] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[ModifiedAt] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["industry", "number_of_employees", "user_id", "email_addresses", "addresses", "phone_numbers", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "industry", "number_of_employees", "user_id", "email_addresses", "addresses", "phone_numbers", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "industry", + "number_of_employees", + "user_id", + "email_addresses", + "addresses", + "phone_numbers", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "industry", + "number_of_employees", + "user_id", + "email_addresses", + "addresses", + "phone_numbers", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -100,21 +141,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmcontactinput.py b/src/panora_sdk/models/unifiedcrmcontactinput.py index 719a769..2feb38a 100644 --- a/src/panora_sdk/models/unifiedcrmcontactinput.py +++ b/src/panora_sdk/models/unifiedcrmcontactinput.py @@ -4,10 +4,16 @@ from .address import Address, AddressTypedDict from .email import Email, EmailTypedDict from .phone import Phone, PhoneTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class UnifiedCrmContactInputTypedDict(TypedDict): @@ -25,28 +31,48 @@ class UnifiedCrmContactInputTypedDict(TypedDict): r"""The UUID of the user who owns the contact""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the contact between the remote 3rd party & Panora""" - + class UnifiedCrmContactInput(BaseModel): first_name: Nullable[str] r"""The first name of the contact""" + last_name: Nullable[str] r"""The last name of the contact""" + email_addresses: OptionalNullable[List[Email]] = UNSET r"""The email addresses of the contact""" + phone_numbers: OptionalNullable[List[Phone]] = UNSET r"""The phone numbers of the contact""" + addresses: OptionalNullable[List[Address]] = UNSET r"""The addresses of the contact""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user who owns the contact""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the contact between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["email_addresses", "phone_numbers", "addresses", "user_id", "field_mappings"] - nullable_fields = ["first_name", "last_name", "email_addresses", "phone_numbers", "addresses", "user_id", "field_mappings"] + optional_fields = [ + "email_addresses", + "phone_numbers", + "addresses", + "user_id", + "field_mappings", + ] + nullable_fields = [ + "first_name", + "last_name", + "email_addresses", + "phone_numbers", + "addresses", + "user_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -56,21 +82,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmcontactoutput.py b/src/panora_sdk/models/unifiedcrmcontactoutput.py index 0f9095c..1da8fe1 100644 --- a/src/panora_sdk/models/unifiedcrmcontactoutput.py +++ b/src/panora_sdk/models/unifiedcrmcontactoutput.py @@ -5,10 +5,16 @@ from .email import Email, EmailTypedDict from .phone import Phone, PhoneTypedDict from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class UnifiedCrmContactOutputTypedDict(TypedDict): @@ -36,38 +42,73 @@ class UnifiedCrmContactOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedCrmContactOutput(BaseModel): first_name: Nullable[str] r"""The first name of the contact""" + last_name: Nullable[str] r"""The last name of the contact""" + email_addresses: OptionalNullable[List[Email]] = UNSET r"""The email addresses of the contact""" + phone_numbers: OptionalNullable[List[Phone]] = UNSET r"""The phone numbers of the contact""" + addresses: OptionalNullable[List[Address]] = UNSET r"""The addresses of the contact""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user who owns the contact""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the contact between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the contact""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the contact in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the contact in the context of the Crm 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["email_addresses", "phone_numbers", "addresses", "user_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["first_name", "last_name", "email_addresses", "phone_numbers", "addresses", "user_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "email_addresses", + "phone_numbers", + "addresses", + "user_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "first_name", + "last_name", + "email_addresses", + "phone_numbers", + "addresses", + "user_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -77,21 +118,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmdealinput.py b/src/panora_sdk/models/unifiedcrmdealinput.py index 47ad29c..b27c6f7 100644 --- a/src/panora_sdk/models/unifiedcrmdealinput.py +++ b/src/panora_sdk/models/unifiedcrmdealinput.py @@ -1,10 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmDealInputTypedDict(TypedDict): @@ -22,28 +28,42 @@ class UnifiedCrmDealInputTypedDict(TypedDict): r"""The UUID of the company tied to the deal""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the company between the remote 3rd party & Panora""" - + class UnifiedCrmDealInput(BaseModel): name: Nullable[str] r"""The name of the deal""" + description: Nullable[str] r"""The description of the deal""" + amount: Nullable[float] r"""The amount of the deal""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user who is on the deal""" + stage_id: OptionalNullable[str] = UNSET r"""The UUID of the stage of the deal""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the deal""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the company between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["user_id", "stage_id", "company_id", "field_mappings"] - nullable_fields = ["name", "description", "amount", "user_id", "stage_id", "company_id", "field_mappings"] + nullable_fields = [ + "name", + "description", + "amount", + "user_id", + "stage_id", + "company_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -53,21 +73,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmdealoutput.py b/src/panora_sdk/models/unifiedcrmdealoutput.py index fd4d4fb..cb52f45 100644 --- a/src/panora_sdk/models/unifiedcrmdealoutput.py +++ b/src/panora_sdk/models/unifiedcrmdealoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmDealOutputTypedDict(TypedDict): @@ -33,38 +39,72 @@ class UnifiedCrmDealOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedCrmDealOutput(BaseModel): name: Nullable[str] r"""The name of the deal""" + description: Nullable[str] r"""The description of the deal""" + amount: Nullable[float] r"""The amount of the deal""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user who is on the deal""" + stage_id: OptionalNullable[str] = UNSET r"""The UUID of the stage of the deal""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the deal""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the company between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the deal""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the deal in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the deal in the context of the Crm 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["user_id", "stage_id", "company_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "description", "amount", "user_id", "stage_id", "company_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "user_id", + "stage_id", + "company_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "description", + "amount", + "user_id", + "stage_id", + "company_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -74,21 +114,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmengagementinput.py b/src/panora_sdk/models/unifiedcrmengagementinput.py index 3b2b701..6986fbf 100644 --- a/src/panora_sdk/models/unifiedcrmengagementinput.py +++ b/src/panora_sdk/models/unifiedcrmengagementinput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class UnifiedCrmEngagementInputTypedDict(TypedDict): @@ -29,34 +35,64 @@ class UnifiedCrmEngagementInputTypedDict(TypedDict): r"""The UUIDs of contacts tied to the engagement object""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the engagement between the remote 3rd party & Panora""" - + class UnifiedCrmEngagementInput(BaseModel): type: Nullable[str] r"""The type of the engagement. Authorized values are EMAIL, CALL or MEETING""" + content: OptionalNullable[str] = UNSET r"""The content of the engagement""" + direction: OptionalNullable[str] = UNSET r"""The direction of the engagement. Authorized values are INBOUND or OUTBOUND""" + subject: OptionalNullable[str] = UNSET r"""The subject of the engagement""" + start_at: OptionalNullable[datetime] = UNSET r"""The start time of the engagement""" + end_time: OptionalNullable[datetime] = UNSET r"""The end time of the engagement""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user tied to the engagement""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the engagement""" + contacts: OptionalNullable[List[str]] = UNSET r"""The UUIDs of contacts tied to the engagement object""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the engagement between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["content", "direction", "subject", "start_at", "end_time", "user_id", "company_id", "contacts", "field_mappings"] - nullable_fields = ["type", "content", "direction", "subject", "start_at", "end_time", "user_id", "company_id", "contacts", "field_mappings"] + optional_fields = [ + "content", + "direction", + "subject", + "start_at", + "end_time", + "user_id", + "company_id", + "contacts", + "field_mappings", + ] + nullable_fields = [ + "type", + "content", + "direction", + "subject", + "start_at", + "end_time", + "user_id", + "company_id", + "contacts", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -66,21 +102,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmengagementoutput.py b/src/panora_sdk/models/unifiedcrmengagementoutput.py index 543ecb4..00cdf5e 100644 --- a/src/panora_sdk/models/unifiedcrmengagementoutput.py +++ b/src/panora_sdk/models/unifiedcrmengagementoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class UnifiedCrmEngagementOutputTypedDict(TypedDict): @@ -39,44 +45,89 @@ class UnifiedCrmEngagementOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedCrmEngagementOutput(BaseModel): type: Nullable[str] r"""The type of the engagement. Authorized values are EMAIL, CALL or MEETING""" + content: OptionalNullable[str] = UNSET r"""The content of the engagement""" + direction: OptionalNullable[str] = UNSET r"""The direction of the engagement. Authorized values are INBOUND or OUTBOUND""" + subject: OptionalNullable[str] = UNSET r"""The subject of the engagement""" + start_at: OptionalNullable[datetime] = UNSET r"""The start time of the engagement""" + end_time: OptionalNullable[datetime] = UNSET r"""The end time of the engagement""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user tied to the engagement""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the engagement""" + contacts: OptionalNullable[List[str]] = UNSET r"""The UUIDs of contacts tied to the engagement object""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the engagement between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the engagement""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the engagement in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the engagement in the context of the Crm 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["content", "direction", "subject", "start_at", "end_time", "user_id", "company_id", "contacts", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["type", "content", "direction", "subject", "start_at", "end_time", "user_id", "company_id", "contacts", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "content", + "direction", + "subject", + "start_at", + "end_time", + "user_id", + "company_id", + "contacts", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "type", + "content", + "direction", + "subject", + "start_at", + "end_time", + "user_id", + "company_id", + "contacts", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -86,21 +137,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmnoteinput.py b/src/panora_sdk/models/unifiedcrmnoteinput.py index 5f5359c..2aab7bf 100644 --- a/src/panora_sdk/models/unifiedcrmnoteinput.py +++ b/src/panora_sdk/models/unifiedcrmnoteinput.py @@ -1,10 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmNoteInputTypedDict(TypedDict): @@ -20,26 +26,44 @@ class UnifiedCrmNoteInputTypedDict(TypedDict): r"""The UUID of the deal tied to the note""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the note between the remote 3rd party & Panora""" - + class UnifiedCrmNoteInput(BaseModel): content: Nullable[str] r"""The content of the note""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user tied to the note""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the note""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact tied to the note""" + deal_id: OptionalNullable[str] = UNSET r"""The UUID of the deal tied to the note""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the note between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["user_id", "company_id", "contact_id", "deal_id", "field_mappings"] - nullable_fields = ["content", "user_id", "company_id", "contact_id", "deal_id", "field_mappings"] + optional_fields = [ + "user_id", + "company_id", + "contact_id", + "deal_id", + "field_mappings", + ] + nullable_fields = [ + "content", + "user_id", + "company_id", + "contact_id", + "deal_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -49,21 +73,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmnoteoutput.py b/src/panora_sdk/models/unifiedcrmnoteoutput.py index 8b73ff6..75bec03 100644 --- a/src/panora_sdk/models/unifiedcrmnoteoutput.py +++ b/src/panora_sdk/models/unifiedcrmnoteoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmNoteOutputTypedDict(TypedDict): @@ -31,36 +37,69 @@ class UnifiedCrmNoteOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedCrmNoteOutput(BaseModel): content: Nullable[str] r"""The content of the note""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user tied to the note""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the note""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact tied to the note""" + deal_id: OptionalNullable[str] = UNSET r"""The UUID of the deal tied to the note""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the note between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the note""" + remote_id: OptionalNullable[str] = UNSET r"""The ID of the note in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the note in the context of the Crm 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["user_id", "company_id", "contact_id", "deal_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["content", "user_id", "company_id", "contact_id", "deal_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "user_id", + "company_id", + "contact_id", + "deal_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "content", + "user_id", + "company_id", + "contact_id", + "deal_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -70,21 +109,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmstageoutput.py b/src/panora_sdk/models/unifiedcrmstageoutput.py index 490ee59..ec41d25 100644 --- a/src/panora_sdk/models/unifiedcrmstageoutput.py +++ b/src/panora_sdk/models/unifiedcrmstageoutput.py @@ -1,31 +1,33 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmStageOutputCreatedAtTypedDict(TypedDict): r"""The created date of the object""" - - + class UnifiedCrmStageOutputCreatedAt(BaseModel): r"""The created date of the object""" - - + class UnifiedCrmStageOutputModifiedAtTypedDict(TypedDict): r"""The modified date of the object""" - - + class UnifiedCrmStageOutputModifiedAt(BaseModel): r"""The modified date of the object""" - - + class UnifiedCrmStageOutputTypedDict(TypedDict): stage_name: Nullable[str] @@ -42,28 +44,49 @@ class UnifiedCrmStageOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[UnifiedCrmStageOutputModifiedAtTypedDict]] r"""The modified date of the object""" - + class UnifiedCrmStageOutput(BaseModel): stage_name: Nullable[str] r"""The name of the stage""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the stage between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the stage""" + remote_id: OptionalNullable[str] = UNSET r"""The ID of the stage in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the stage in the context of the Crm 3rd Party""" + created_at: OptionalNullable[UnifiedCrmStageOutputCreatedAt] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[UnifiedCrmStageOutputModifiedAt] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["stage_name", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "stage_name", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -73,21 +96,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmtaskinput.py b/src/panora_sdk/models/unifiedcrmtaskinput.py index 700df7f..839fa51 100644 --- a/src/panora_sdk/models/unifiedcrmtaskinput.py +++ b/src/panora_sdk/models/unifiedcrmtaskinput.py @@ -1,10 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmTaskInputTypedDict(TypedDict): @@ -26,32 +32,57 @@ class UnifiedCrmTaskInputTypedDict(TypedDict): r"""The UUID of the deal tied to the task""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the task between the remote 3rd party & Panora""" - + class UnifiedCrmTaskInput(BaseModel): subject: Nullable[str] r"""The subject of the task""" + content: Nullable[str] r"""The content of the task""" + status: Nullable[str] r"""The status of the task. Authorized values are PENDING, COMPLETED.""" + due_date: OptionalNullable[str] = UNSET r"""The due date of the task""" + finished_date: OptionalNullable[str] = UNSET r"""The finished date of the task""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user tied to the task""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the task""" + deal_id: OptionalNullable[str] = UNSET r"""The UUID of the deal tied to the task""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the task between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["due_date", "finished_date", "user_id", "company_id", "deal_id", "field_mappings"] - nullable_fields = ["subject", "content", "status", "due_date", "finished_date", "user_id", "company_id", "deal_id", "field_mappings"] + optional_fields = [ + "due_date", + "finished_date", + "user_id", + "company_id", + "deal_id", + "field_mappings", + ] + nullable_fields = [ + "subject", + "content", + "status", + "due_date", + "finished_date", + "user_id", + "company_id", + "deal_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -61,21 +92,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmtaskoutput.py b/src/panora_sdk/models/unifiedcrmtaskoutput.py index f190e0f..1d3bece 100644 --- a/src/panora_sdk/models/unifiedcrmtaskoutput.py +++ b/src/panora_sdk/models/unifiedcrmtaskoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmTaskOutputTypedDict(TypedDict): @@ -37,42 +43,82 @@ class UnifiedCrmTaskOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedCrmTaskOutput(BaseModel): subject: Nullable[str] r"""The subject of the task""" + content: Nullable[str] r"""The content of the task""" + status: Nullable[str] r"""The status of the task. Authorized values are PENDING, COMPLETED.""" + due_date: OptionalNullable[str] = UNSET r"""The due date of the task""" + finished_date: OptionalNullable[str] = UNSET r"""The finished date of the task""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user tied to the task""" + company_id: OptionalNullable[str] = UNSET r"""The UUID of the company tied to the task""" + deal_id: OptionalNullable[str] = UNSET r"""The UUID of the deal tied to the task""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the task between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the task""" + remote_id: OptionalNullable[str] = UNSET r"""The ID of the task in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the task in the context of the Crm 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["due_date", "finished_date", "user_id", "company_id", "deal_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["subject", "content", "status", "due_date", "finished_date", "user_id", "company_id", "deal_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "due_date", + "finished_date", + "user_id", + "company_id", + "deal_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "subject", + "content", + "status", + "due_date", + "finished_date", + "user_id", + "company_id", + "deal_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -82,21 +128,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedcrmuseroutput.py b/src/panora_sdk/models/unifiedcrmuseroutput.py index 0d993d9..7456a74 100644 --- a/src/panora_sdk/models/unifiedcrmuseroutput.py +++ b/src/panora_sdk/models/unifiedcrmuseroutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedCrmUserOutputTypedDict(TypedDict): @@ -25,30 +31,53 @@ class UnifiedCrmUserOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedCrmUserOutput(BaseModel): name: Nullable[str] r"""The name of the user""" + email: Nullable[str] r"""The email of the user""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the user between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the user""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the user in the context of the Crm 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the user in the context of the Crm 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "email", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "email", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -58,21 +87,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedecommercecustomeroutput.py b/src/panora_sdk/models/unifiedecommercecustomeroutput.py index 5cbc963..17a3e24 100644 --- a/src/panora_sdk/models/unifiedecommercecustomeroutput.py +++ b/src/panora_sdk/models/unifiedecommercecustomeroutput.py @@ -2,31 +2,33 @@ from __future__ import annotations from .address import Address, AddressTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired +from typing import List +from typing_extensions import NotRequired, TypedDict class UnifiedEcommerceCustomerOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceCustomerOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceCustomerOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceCustomerOutputRemoteData(BaseModel): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceCustomerOutputTypedDict(TypedDict): email: NotRequired[Nullable[str]] @@ -39,48 +41,88 @@ class UnifiedEcommerceCustomerOutputTypedDict(TypedDict): r"""The phone number of the customer""" addresses: NotRequired[Nullable[List[AddressTypedDict]]] r"""The addresses of the customer""" - field_mappings: NotRequired[Nullable[UnifiedEcommerceCustomerOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedEcommerceCustomerOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the customer""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the customer in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedEcommerceCustomerOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedEcommerceCustomerOutputRemoteDataTypedDict] + ] r"""The remote data of the customer in the context of the 3rd Party""" created_at: NotRequired[Nullable[str]] r"""The created date of the object""" modified_at: NotRequired[Nullable[str]] r"""The modified date of the object""" - + class UnifiedEcommerceCustomerOutput(BaseModel): email: OptionalNullable[str] = UNSET r"""The email of the customer""" + first_name: OptionalNullable[str] = UNSET r"""The first name of the customer""" + last_name: OptionalNullable[str] = UNSET r"""The last name of the customer""" + phone_number: OptionalNullable[str] = UNSET r"""The phone number of the customer""" + addresses: OptionalNullable[List[Address]] = UNSET r"""The addresses of the customer""" - field_mappings: OptionalNullable[UnifiedEcommerceCustomerOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedEcommerceCustomerOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the customer""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the customer in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedEcommerceCustomerOutputRemoteData] = UNSET r"""The remote data of the customer in the context of the 3rd Party""" + created_at: OptionalNullable[str] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[str] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["email", "first_name", "last_name", "phone_number", "addresses", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["email", "first_name", "last_name", "phone_number", "addresses", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "email", + "first_name", + "last_name", + "phone_number", + "addresses", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "email", + "first_name", + "last_name", + "phone_number", + "addresses", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -90,21 +132,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedecommercefulfillmentoutput.py b/src/panora_sdk/models/unifiedecommercefulfillmentoutput.py index 019d675..c64d019 100644 --- a/src/panora_sdk/models/unifiedecommercefulfillmentoutput.py +++ b/src/panora_sdk/models/unifiedecommercefulfillmentoutput.py @@ -1,41 +1,41 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired +from typing import List +from typing_extensions import NotRequired, TypedDict class ItemsModelTypedDict(TypedDict): r"""The items in the fulfilment""" - - + class ItemsModel(BaseModel): r"""The items in the fulfilment""" - - + class UnifiedEcommerceFulfillmentOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceFulfillmentOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceFulfillmentOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceFulfillmentOutputRemoteData(BaseModel): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceFulfillmentOutputTypedDict(TypedDict): carrier: NotRequired[Nullable[str]] @@ -48,48 +48,88 @@ class UnifiedEcommerceFulfillmentOutputTypedDict(TypedDict): r"""The items in the fulfilment""" order_id: NotRequired[Nullable[str]] r"""The UUID of the order associated with the fulfilment""" - field_mappings: NotRequired[Nullable[UnifiedEcommerceFulfillmentOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedEcommerceFulfillmentOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the fulfilment""" remote_id: NotRequired[Nullable[str]] r"""The remote ID of the fulfilment in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedEcommerceFulfillmentOutputRemoteDataTypedDict]] + remote_data: NotRequired[ + Nullable[UnifiedEcommerceFulfillmentOutputRemoteDataTypedDict] + ] r"""The remote data of the customer in the context of the 3rd Party""" created_at: NotRequired[Nullable[str]] r"""The created date of the object""" modified_at: NotRequired[Nullable[str]] r"""The modified date of the object""" - + class UnifiedEcommerceFulfillmentOutput(BaseModel): carrier: OptionalNullable[str] = UNSET r"""The carrier of the fulfilment""" + tracking_urls: OptionalNullable[List[str]] = UNSET r"""The tracking URLs of the fulfilment""" + tracking_numbers: OptionalNullable[List[str]] = UNSET r"""The tracking numbers of the fulfilment""" + items: OptionalNullable[ItemsModel] = UNSET r"""The items in the fulfilment""" + order_id: OptionalNullable[str] = UNSET r"""The UUID of the order associated with the fulfilment""" - field_mappings: OptionalNullable[UnifiedEcommerceFulfillmentOutputFieldMappings] = UNSET + + field_mappings: OptionalNullable[UnifiedEcommerceFulfillmentOutputFieldMappings] = ( + UNSET + ) r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the fulfilment""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the fulfilment in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedEcommerceFulfillmentOutputRemoteData] = UNSET r"""The remote data of the customer in the context of the 3rd Party""" + created_at: OptionalNullable[str] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[str] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["carrier", "tracking_urls", "tracking_numbers", "items", "order_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["carrier", "tracking_urls", "tracking_numbers", "items", "order_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "carrier", + "tracking_urls", + "tracking_numbers", + "items", + "order_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "carrier", + "tracking_urls", + "tracking_numbers", + "items", + "order_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -99,21 +139,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedecommerceorderinput.py b/src/panora_sdk/models/unifiedecommerceorderinput.py index b5d0ec4..187ef4e 100644 --- a/src/panora_sdk/models/unifiedecommerceorderinput.py +++ b/src/panora_sdk/models/unifiedecommerceorderinput.py @@ -2,21 +2,25 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired +from typing import List +from typing_extensions import NotRequired, TypedDict class UnifiedEcommerceOrderInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceOrderInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceOrderInputTypedDict(TypedDict): order_status: NotRequired[Nullable[str]] @@ -41,40 +45,79 @@ class UnifiedEcommerceOrderInputTypedDict(TypedDict): r"""The UUID of the customer associated with the order""" items: NotRequired[Nullable[List[LineItemTypedDict]]] r"""The items in the order""" - field_mappings: NotRequired[Nullable[UnifiedEcommerceOrderInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedEcommerceOrderInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedEcommerceOrderInput(BaseModel): order_status: OptionalNullable[str] = UNSET r"""The status of the order""" + order_number: OptionalNullable[str] = UNSET r"""The number of the order""" + payment_status: OptionalNullable[str] = UNSET r"""The payment status of the order""" + currency: OptionalNullable[str] = UNSET r"""The currency of the order. Authorized value must be of type CurrencyCode (ISO 4217)""" + total_price: OptionalNullable[float] = UNSET r"""The total price of the order""" + total_discount: OptionalNullable[float] = UNSET r"""The total discount on the order""" + total_shipping: OptionalNullable[float] = UNSET r"""The total shipping cost of the order""" + total_tax: OptionalNullable[float] = UNSET r"""The total tax on the order""" + fulfillment_status: OptionalNullable[str] = UNSET r"""The fulfillment status of the order""" + customer_id: OptionalNullable[str] = UNSET r"""The UUID of the customer associated with the order""" + items: OptionalNullable[List[LineItem]] = UNSET r"""The items in the order""" + field_mappings: OptionalNullable[UnifiedEcommerceOrderInputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["order_status", "order_number", "payment_status", "currency", "total_price", "total_discount", "total_shipping", "total_tax", "fulfillment_status", "customer_id", "items", "field_mappings"] - nullable_fields = ["order_status", "order_number", "payment_status", "currency", "total_price", "total_discount", "total_shipping", "total_tax", "fulfillment_status", "customer_id", "items", "field_mappings"] + optional_fields = [ + "order_status", + "order_number", + "payment_status", + "currency", + "total_price", + "total_discount", + "total_shipping", + "total_tax", + "fulfillment_status", + "customer_id", + "items", + "field_mappings", + ] + nullable_fields = [ + "order_status", + "order_number", + "payment_status", + "currency", + "total_price", + "total_discount", + "total_shipping", + "total_tax", + "fulfillment_status", + "customer_id", + "items", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -84,21 +127,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedecommerceorderoutput.py b/src/panora_sdk/models/unifiedecommerceorderoutput.py index 28d2da7..26e7967 100644 --- a/src/panora_sdk/models/unifiedecommerceorderoutput.py +++ b/src/panora_sdk/models/unifiedecommerceorderoutput.py @@ -2,31 +2,33 @@ from __future__ import annotations from .lineitem import LineItem, LineItemTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired +from typing import List +from typing_extensions import NotRequired, TypedDict class UnifiedEcommerceOrderOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceOrderOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceOrderOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceOrderOutputRemoteData(BaseModel): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceOrderOutputTypedDict(TypedDict): order_status: NotRequired[Nullable[str]] @@ -51,7 +53,9 @@ class UnifiedEcommerceOrderOutputTypedDict(TypedDict): r"""The UUID of the customer associated with the order""" items: NotRequired[Nullable[List[LineItemTypedDict]]] r"""The items in the order""" - field_mappings: NotRequired[Nullable[UnifiedEcommerceOrderOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedEcommerceOrderOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the order""" @@ -63,48 +67,100 @@ class UnifiedEcommerceOrderOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[str]] r"""The modified date of the object""" - + class UnifiedEcommerceOrderOutput(BaseModel): order_status: OptionalNullable[str] = UNSET r"""The status of the order""" + order_number: OptionalNullable[str] = UNSET r"""The number of the order""" + payment_status: OptionalNullable[str] = UNSET r"""The payment status of the order""" + currency: OptionalNullable[str] = UNSET r"""The currency of the order. Authorized value must be of type CurrencyCode (ISO 4217)""" + total_price: OptionalNullable[float] = UNSET r"""The total price of the order""" + total_discount: OptionalNullable[float] = UNSET r"""The total discount on the order""" + total_shipping: OptionalNullable[float] = UNSET r"""The total shipping cost of the order""" + total_tax: OptionalNullable[float] = UNSET r"""The total tax on the order""" + fulfillment_status: OptionalNullable[str] = UNSET r"""The fulfillment status of the order""" + customer_id: OptionalNullable[str] = UNSET r"""The UUID of the customer associated with the order""" + items: OptionalNullable[List[LineItem]] = UNSET r"""The items in the order""" + field_mappings: OptionalNullable[UnifiedEcommerceOrderOutputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the order""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the order in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedEcommerceOrderOutputRemoteData] = UNSET r"""The remote data of the customer in the context of the 3rd Party""" + created_at: OptionalNullable[str] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[str] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["order_status", "order_number", "payment_status", "currency", "total_price", "total_discount", "total_shipping", "total_tax", "fulfillment_status", "customer_id", "items", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["order_status", "order_number", "payment_status", "currency", "total_price", "total_discount", "total_shipping", "total_tax", "fulfillment_status", "customer_id", "items", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "order_status", + "order_number", + "payment_status", + "currency", + "total_price", + "total_discount", + "total_shipping", + "total_tax", + "fulfillment_status", + "customer_id", + "items", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "order_status", + "order_number", + "payment_status", + "currency", + "total_price", + "total_discount", + "total_shipping", + "total_tax", + "fulfillment_status", + "customer_id", + "items", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -114,21 +170,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedecommerceproductinput.py b/src/panora_sdk/models/unifiedecommerceproductinput.py index 037d429..efa7b63 100644 --- a/src/panora_sdk/models/unifiedecommerceproductinput.py +++ b/src/panora_sdk/models/unifiedecommerceproductinput.py @@ -2,21 +2,25 @@ from __future__ import annotations from .variant import Variant, VariantTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedEcommerceProductInputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceProductInputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceProductInputTypedDict(TypedDict): product_url: NotRequired[Nullable[str]] @@ -35,34 +39,63 @@ class UnifiedEcommerceProductInputTypedDict(TypedDict): r"""The variants of the product""" tags: NotRequired[Nullable[List[str]]] r"""The tags associated with the product""" - field_mappings: NotRequired[Nullable[UnifiedEcommerceProductInputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedEcommerceProductInputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedEcommerceProductInput(BaseModel): product_url: OptionalNullable[str] = UNSET r"""The URL of the product""" + product_type: OptionalNullable[str] = UNSET r"""The type of the product""" + product_status: OptionalNullable[str] = UNSET r"""The status of the product. Either ACTIVE, DRAFT OR ARCHIVED.""" + images_urls: OptionalNullable[List[str]] = UNSET r"""The URLs of the product images""" + description: OptionalNullable[str] = UNSET r"""The description of the product""" + vendor: OptionalNullable[str] = UNSET r"""The vendor of the product""" + variants: Optional[List[Variant]] = None r"""The variants of the product""" + tags: OptionalNullable[List[str]] = UNSET r"""The tags associated with the product""" + field_mappings: OptionalNullable[UnifiedEcommerceProductInputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["product_url", "product_type", "product_status", "images_urls", "description", "vendor", "variants", "tags", "field_mappings"] - nullable_fields = ["product_url", "product_type", "product_status", "images_urls", "description", "vendor", "tags", "field_mappings"] + optional_fields = [ + "product_url", + "product_type", + "product_status", + "images_urls", + "description", + "vendor", + "variants", + "tags", + "field_mappings", + ] + nullable_fields = [ + "product_url", + "product_type", + "product_status", + "images_urls", + "description", + "vendor", + "tags", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -72,21 +105,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedecommerceproductoutput.py b/src/panora_sdk/models/unifiedecommerceproductoutput.py index 2c81a0b..96251f0 100644 --- a/src/panora_sdk/models/unifiedecommerceproductoutput.py +++ b/src/panora_sdk/models/unifiedecommerceproductoutput.py @@ -2,31 +2,33 @@ from __future__ import annotations from .variant import Variant, VariantTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, Optional, TypedDict -from typing_extensions import NotRequired +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedEcommerceProductOutputFieldMappingsTypedDict(TypedDict): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceProductOutputFieldMappings(BaseModel): r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - + class UnifiedEcommerceProductOutputRemoteDataTypedDict(TypedDict): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceProductOutputRemoteData(BaseModel): r"""The remote data of the customer in the context of the 3rd Party""" - - + class UnifiedEcommerceProductOutputTypedDict(TypedDict): product_url: NotRequired[Nullable[str]] @@ -45,7 +47,9 @@ class UnifiedEcommerceProductOutputTypedDict(TypedDict): r"""The variants of the product""" tags: NotRequired[Nullable[List[str]]] r"""The tags associated with the product""" - field_mappings: NotRequired[Nullable[UnifiedEcommerceProductOutputFieldMappingsTypedDict]] + field_mappings: NotRequired[ + Nullable[UnifiedEcommerceProductOutputFieldMappingsTypedDict] + ] r"""The custom field mappings of the object between the remote 3rd party & Panora""" id: NotRequired[Nullable[str]] r"""The UUID of the product""" @@ -57,42 +61,84 @@ class UnifiedEcommerceProductOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[str]] r"""The modified date of the object""" - + class UnifiedEcommerceProductOutput(BaseModel): product_url: OptionalNullable[str] = UNSET r"""The URL of the product""" + product_type: OptionalNullable[str] = UNSET r"""The type of the product""" + product_status: OptionalNullable[str] = UNSET r"""The status of the product. Either ACTIVE, DRAFT OR ARCHIVED.""" + images_urls: OptionalNullable[List[str]] = UNSET r"""The URLs of the product images""" + description: OptionalNullable[str] = UNSET r"""The description of the product""" + vendor: OptionalNullable[str] = UNSET r"""The vendor of the product""" + variants: Optional[List[Variant]] = None r"""The variants of the product""" + tags: OptionalNullable[List[str]] = UNSET r"""The tags associated with the product""" + field_mappings: OptionalNullable[UnifiedEcommerceProductOutputFieldMappings] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the product""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the product in the context of the 3rd Party""" + remote_data: OptionalNullable[UnifiedEcommerceProductOutputRemoteData] = UNSET r"""The remote data of the customer in the context of the 3rd Party""" + created_at: OptionalNullable[str] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[str] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["product_url", "product_type", "product_status", "images_urls", "description", "vendor", "variants", "tags", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["product_url", "product_type", "product_status", "images_urls", "description", "vendor", "tags", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "product_url", + "product_type", + "product_status", + "images_urls", + "description", + "vendor", + "variants", + "tags", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "product_url", + "product_type", + "product_status", + "images_urls", + "description", + "vendor", + "tags", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -102,21 +148,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedfilestoragefileinput.py b/src/panora_sdk/models/unifiedfilestoragefileinput.py index d2c73bb..8b0012b 100644 --- a/src/panora_sdk/models/unifiedfilestoragefileinput.py +++ b/src/panora_sdk/models/unifiedfilestoragefileinput.py @@ -1,10 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedFilestorageFileInputTypedDict(TypedDict): @@ -24,30 +30,46 @@ class UnifiedFilestorageFileInputTypedDict(TypedDict): r"""The UUID of the shared link tied to the file""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedFilestorageFileInput(BaseModel): name: Nullable[str] r"""The name of the file""" + file_url: Nullable[str] r"""The url of the file""" + mime_type: Nullable[str] r"""The mime type of the file""" + size: Nullable[str] r"""The size of the file""" + folder_id: Nullable[str] r"""The UUID of the folder tied to the file""" + permission: Nullable[str] r"""The UUID of the permission tied to the file""" + shared_link: Nullable[str] r"""The UUID of the shared link tied to the file""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["field_mappings"] - nullable_fields = ["name", "file_url", "mime_type", "size", "folder_id", "permission", "shared_link", "field_mappings"] + nullable_fields = [ + "name", + "file_url", + "mime_type", + "size", + "folder_id", + "permission", + "shared_link", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -57,21 +79,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedfilestoragefileoutput.py b/src/panora_sdk/models/unifiedfilestoragefileoutput.py index 37dfbbd..a96764b 100644 --- a/src/panora_sdk/models/unifiedfilestoragefileoutput.py +++ b/src/panora_sdk/models/unifiedfilestoragefileoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedFilestorageFileOutputTypedDict(TypedDict): @@ -35,40 +41,73 @@ class UnifiedFilestorageFileOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedFilestorageFileOutput(BaseModel): name: Nullable[str] r"""The name of the file""" + file_url: Nullable[str] r"""The url of the file""" + mime_type: Nullable[str] r"""The mime type of the file""" + size: Nullable[str] r"""The size of the file""" + folder_id: Nullable[str] r"""The UUID of the folder tied to the file""" + permission: Nullable[str] r"""The UUID of the permission tied to the file""" + shared_link: Nullable[str] r"""The UUID of the shared link tied to the file""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the file""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the file in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the file in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "file_url", "mime_type", "size", "folder_id", "permission", "shared_link", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "file_url", + "mime_type", + "size", + "folder_id", + "permission", + "shared_link", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -78,21 +117,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedfilestoragefolderinput.py b/src/panora_sdk/models/unifiedfilestoragefolderinput.py index 3b1ebe0..86c5c0a 100644 --- a/src/panora_sdk/models/unifiedfilestoragefolderinput.py +++ b/src/panora_sdk/models/unifiedfilestoragefolderinput.py @@ -1,10 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedFilestorageFolderInputTypedDict(TypedDict): @@ -26,32 +32,49 @@ class UnifiedFilestorageFolderInputTypedDict(TypedDict): r"""The UUID of the permission tied to the folder""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + class UnifiedFilestorageFolderInput(BaseModel): name: Nullable[str] r"""The name of the folder""" + size: Nullable[str] r"""The size of the folder""" + folder_url: Nullable[str] r"""The url of the folder""" + description: str r"""The description of the folder""" + drive_id: Nullable[str] r"""The UUID of the drive tied to the folder""" + parent_folder_id: Nullable[str] r"""The UUID of the parent folder""" + shared_link: Nullable[str] r"""The UUID of the shared link tied to the folder""" + permission: Nullable[str] r"""The UUID of the permission tied to the folder""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["field_mappings"] - nullable_fields = ["name", "size", "folder_url", "drive_id", "parent_folder_id", "shared_link", "permission", "field_mappings"] + nullable_fields = [ + "name", + "size", + "folder_url", + "drive_id", + "parent_folder_id", + "shared_link", + "permission", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -61,21 +84,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedfilestoragefolderoutput.py b/src/panora_sdk/models/unifiedfilestoragefolderoutput.py index 57eb3d4..247a72d 100644 --- a/src/panora_sdk/models/unifiedfilestoragefolderoutput.py +++ b/src/panora_sdk/models/unifiedfilestoragefolderoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedFilestorageFolderOutputTypedDict(TypedDict): @@ -37,42 +43,76 @@ class UnifiedFilestorageFolderOutputTypedDict(TypedDict): r"""The created date of the folder""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the folder""" - + class UnifiedFilestorageFolderOutput(BaseModel): name: Nullable[str] r"""The name of the folder""" + size: Nullable[str] r"""The size of the folder""" + folder_url: Nullable[str] r"""The url of the folder""" + description: str r"""The description of the folder""" + drive_id: Nullable[str] r"""The UUID of the drive tied to the folder""" + parent_folder_id: Nullable[str] r"""The UUID of the parent folder""" + shared_link: Nullable[str] r"""The UUID of the shared link tied to the folder""" + permission: Nullable[str] r"""The UUID of the permission tied to the folder""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the folder""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the folder in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the folder in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the folder""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the folder""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "size", "folder_url", "drive_id", "parent_folder_id", "shared_link", "permission", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "size", + "folder_url", + "drive_id", + "parent_folder_id", + "shared_link", + "permission", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -82,21 +122,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedfilestoragegroupoutput.py b/src/panora_sdk/models/unifiedfilestoragegroupoutput.py index 2371224..047d04a 100644 --- a/src/panora_sdk/models/unifiedfilestoragegroupoutput.py +++ b/src/panora_sdk/models/unifiedfilestoragegroupoutput.py @@ -1,12 +1,27 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedfilestorageuseroutput import UnifiedFilestorageUserOutput, UnifiedFilestorageUserOutputTypedDict +from .unifiedfilestorageuseroutput import ( + UnifiedFilestorageUserOutput, + UnifiedFilestorageUserOutputTypedDict, +) from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict, Union -from typing_extensions import NotRequired +from typing import Any, Dict, List, Union +from typing_extensions import NotRequired, TypedDict + + +UsersModelTypedDict = Union[UnifiedFilestorageUserOutputTypedDict, str] + + +UsersModel = Union[UnifiedFilestorageUserOutput, str] class UnifiedFilestorageGroupOutputTypedDict(TypedDict): @@ -28,32 +43,56 @@ class UnifiedFilestorageGroupOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedFilestorageGroupOutput(BaseModel): name: Nullable[str] r"""The name of the group""" + users: List[UsersModel] r"""Uuids of users of the group""" + remote_was_deleted: Nullable[bool] r"""Indicates whether or not this object has been deleted in the third party platform.""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the group""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the group in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the group in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "remote_was_deleted", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "remote_was_deleted", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -63,27 +102,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - - -UsersModelTypedDict = Union[UnifiedFilestorageUserOutputTypedDict, str] - - -UsersModel = Union[UnifiedFilestorageUserOutput, str] - diff --git a/src/panora_sdk/models/unifiedfilestorageuseroutput.py b/src/panora_sdk/models/unifiedfilestorageuseroutput.py index 36db1f7..e4e824a 100644 --- a/src/panora_sdk/models/unifiedfilestorageuseroutput.py +++ b/src/panora_sdk/models/unifiedfilestorageuseroutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedFilestorageUserOutputTypedDict(TypedDict): @@ -27,32 +33,57 @@ class UnifiedFilestorageUserOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedFilestorageUserOutput(BaseModel): name: Nullable[str] r"""The name of the user""" + email: Nullable[str] r"""The email of the user""" + is_me: Nullable[bool] r"""Whether the user is the one who linked this account.""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the object between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the user""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the user in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the user in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "email", "is_me", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "email", + "is_me", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -62,21 +93,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedhrisbankinfooutput.py b/src/panora_sdk/models/unifiedhrisbankinfooutput.py deleted file mode 100644 index 86945bb..0000000 --- a/src/panora_sdk/models/unifiedhrisbankinfooutput.py +++ /dev/null @@ -1,118 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class FieldMappingsModelTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class FieldMappingsModel(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class RemoteDataTypedDict(TypedDict): - r"""The remote data of the bank info in the context of the 3rd Party""" - - - -class RemoteData(BaseModel): - r"""The remote data of the bank info in the context of the 3rd Party""" - - - -class UnifiedHrisBankinfoOutputTypedDict(TypedDict): - id: Nullable[str] - r"""The UUID of the bank info record""" - created_at: Nullable[datetime] - r"""The created date of the bank info record""" - modified_at: Nullable[datetime] - r"""The last modified date of the bank info record""" - remote_was_deleted: Nullable[bool] - r"""Indicates if the bank info was deleted in the remote system""" - account_type: NotRequired[Nullable[str]] - r"""The type of the bank account""" - bank_name: NotRequired[Nullable[str]] - r"""The name of the bank""" - account_number: NotRequired[Nullable[str]] - r"""The account number""" - routing_number: NotRequired[Nullable[str]] - r"""The routing number of the bank""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - field_mappings: NotRequired[Nullable[FieldMappingsModelTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the bank info in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[RemoteDataTypedDict]] - r"""The remote data of the bank info in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the bank info was created in the 3rd party system""" - - -class UnifiedHrisBankinfoOutput(BaseModel): - id: Nullable[str] - r"""The UUID of the bank info record""" - created_at: Nullable[datetime] - r"""The created date of the bank info record""" - modified_at: Nullable[datetime] - r"""The last modified date of the bank info record""" - remote_was_deleted: Nullable[bool] - r"""Indicates if the bank info was deleted in the remote system""" - account_type: OptionalNullable[str] = UNSET - r"""The type of the bank account""" - bank_name: OptionalNullable[str] = UNSET - r"""The name of the bank""" - account_number: OptionalNullable[str] = UNSET - r"""The account number""" - routing_number: OptionalNullable[str] = UNSET - r"""The routing number of the bank""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - field_mappings: OptionalNullable[FieldMappingsModel] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the bank info in the context of the 3rd Party""" - remote_data: OptionalNullable[RemoteData] = UNSET - r"""The remote data of the bank info in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the bank info was created in the 3rd party system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["account_type", "bank_name", "account_number", "routing_number", "employee_id", "field_mappings", "remote_id", "remote_data", "remote_created_at"] - nullable_fields = ["id", "created_at", "modified_at", "remote_was_deleted", "account_type", "bank_name", "account_number", "routing_number", "employee_id", "field_mappings", "remote_id", "remote_data", "remote_created_at"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisbenefitoutput.py b/src/panora_sdk/models/unifiedhrisbenefitoutput.py deleted file mode 100644 index 188fdc0..0000000 --- a/src/panora_sdk/models/unifiedhrisbenefitoutput.py +++ /dev/null @@ -1,126 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisBenefitOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisBenefitOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisBenefitOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the benefit in the context of the 3rd Party""" - - - -class UnifiedHrisBenefitOutputRemoteData(BaseModel): - r"""The remote data of the benefit in the context of the 3rd Party""" - - - -class UnifiedHrisBenefitOutputTypedDict(TypedDict): - provider_name: NotRequired[Nullable[str]] - r"""The name of the benefit provider""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - employee_contribution: NotRequired[Nullable[float]] - r"""The employee contribution amount""" - company_contribution: NotRequired[Nullable[float]] - r"""The company contribution amount""" - start_date: NotRequired[Nullable[datetime]] - r"""The start date of the benefit""" - end_date: NotRequired[Nullable[datetime]] - r"""The end date of the benefit""" - employer_benefit_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employer benefit""" - field_mappings: NotRequired[Nullable[UnifiedHrisBenefitOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the benefit record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the benefit in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisBenefitOutputRemoteDataTypedDict]] - r"""The remote data of the benefit in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the benefit was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the benefit record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the benefit record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the benefit was deleted in the remote system""" - - -class UnifiedHrisBenefitOutput(BaseModel): - provider_name: OptionalNullable[str] = UNSET - r"""The name of the benefit provider""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - employee_contribution: OptionalNullable[float] = UNSET - r"""The employee contribution amount""" - company_contribution: OptionalNullable[float] = UNSET - r"""The company contribution amount""" - start_date: OptionalNullable[datetime] = UNSET - r"""The start date of the benefit""" - end_date: OptionalNullable[datetime] = UNSET - r"""The end date of the benefit""" - employer_benefit_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employer benefit""" - field_mappings: OptionalNullable[UnifiedHrisBenefitOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the benefit record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the benefit in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisBenefitOutputRemoteData] = UNSET - r"""The remote data of the benefit in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the benefit was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the benefit record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the benefit record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the benefit was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["provider_name", "employee_id", "employee_contribution", "company_contribution", "start_date", "end_date", "employer_benefit_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["provider_name", "employee_id", "employee_contribution", "company_contribution", "start_date", "end_date", "employer_benefit_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhriscompanyoutput.py b/src/panora_sdk/models/unifiedhriscompanyoutput.py deleted file mode 100644 index bc75e32..0000000 --- a/src/panora_sdk/models/unifiedhriscompanyoutput.py +++ /dev/null @@ -1,114 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisCompanyOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisCompanyOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisCompanyOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the company in the context of the 3rd Party""" - - - -class UnifiedHrisCompanyOutputRemoteData(BaseModel): - r"""The remote data of the company in the context of the 3rd Party""" - - - -class UnifiedHrisCompanyOutputTypedDict(TypedDict): - legal_name: NotRequired[Nullable[str]] - r"""The legal name of the company""" - locations: NotRequired[Nullable[List[str]]] - r"""UUIDs of the of the Location associated with the company""" - display_name: NotRequired[Nullable[str]] - r"""The display name of the company""" - eins: NotRequired[Nullable[List[str]]] - r"""The Employer Identification Numbers (EINs) of the company""" - field_mappings: NotRequired[Nullable[UnifiedHrisCompanyOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the company record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the company in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisCompanyOutputRemoteDataTypedDict]] - r"""The remote data of the company in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the company was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the company record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the company record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the company was deleted in the remote system""" - - -class UnifiedHrisCompanyOutput(BaseModel): - legal_name: OptionalNullable[str] = UNSET - r"""The legal name of the company""" - locations: OptionalNullable[List[str]] = UNSET - r"""UUIDs of the of the Location associated with the company""" - display_name: OptionalNullable[str] = UNSET - r"""The display name of the company""" - eins: OptionalNullable[List[str]] = UNSET - r"""The Employer Identification Numbers (EINs) of the company""" - field_mappings: OptionalNullable[UnifiedHrisCompanyOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the company record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the company in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisCompanyOutputRemoteData] = UNSET - r"""The remote data of the company in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the company was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the company record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the company record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the company was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["legal_name", "locations", "display_name", "eins", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["legal_name", "locations", "display_name", "eins", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisdependentoutput.py b/src/panora_sdk/models/unifiedhrisdependentoutput.py deleted file mode 100644 index 6d0c99b..0000000 --- a/src/panora_sdk/models/unifiedhrisdependentoutput.py +++ /dev/null @@ -1,142 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisDependentOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisDependentOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisDependentOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the dependent in the context of the 3rd Party""" - - - -class UnifiedHrisDependentOutputRemoteData(BaseModel): - r"""The remote data of the dependent in the context of the 3rd Party""" - - - -class UnifiedHrisDependentOutputTypedDict(TypedDict): - first_name: NotRequired[Nullable[str]] - r"""The first name of the dependent""" - last_name: NotRequired[Nullable[str]] - r"""The last name of the dependent""" - middle_name: NotRequired[Nullable[str]] - r"""The middle name of the dependent""" - relationship: NotRequired[Nullable[str]] - r"""The relationship of the dependent to the employee""" - date_of_birth: NotRequired[Nullable[datetime]] - r"""The date of birth of the dependent""" - gender: NotRequired[Nullable[str]] - r"""The gender of the dependent""" - phone_number: NotRequired[Nullable[str]] - r"""The phone number of the dependent""" - home_location: NotRequired[Nullable[str]] - r"""The UUID of the home location""" - is_student: NotRequired[Nullable[bool]] - r"""Indicates if the dependent is a student""" - ssn: NotRequired[Nullable[str]] - r"""The Social Security Number of the dependent""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - field_mappings: NotRequired[Nullable[UnifiedHrisDependentOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the dependent record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the dependent in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisDependentOutputRemoteDataTypedDict]] - r"""The remote data of the dependent in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the dependent was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the dependent record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the dependent record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the dependent was deleted in the remote system""" - - -class UnifiedHrisDependentOutput(BaseModel): - first_name: OptionalNullable[str] = UNSET - r"""The first name of the dependent""" - last_name: OptionalNullable[str] = UNSET - r"""The last name of the dependent""" - middle_name: OptionalNullable[str] = UNSET - r"""The middle name of the dependent""" - relationship: OptionalNullable[str] = UNSET - r"""The relationship of the dependent to the employee""" - date_of_birth: OptionalNullable[datetime] = UNSET - r"""The date of birth of the dependent""" - gender: OptionalNullable[str] = UNSET - r"""The gender of the dependent""" - phone_number: OptionalNullable[str] = UNSET - r"""The phone number of the dependent""" - home_location: OptionalNullable[str] = UNSET - r"""The UUID of the home location""" - is_student: OptionalNullable[bool] = UNSET - r"""Indicates if the dependent is a student""" - ssn: OptionalNullable[str] = UNSET - r"""The Social Security Number of the dependent""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - field_mappings: OptionalNullable[UnifiedHrisDependentOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the dependent record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the dependent in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisDependentOutputRemoteData] = UNSET - r"""The remote data of the dependent in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the dependent was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the dependent record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the dependent record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the dependent was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["first_name", "last_name", "middle_name", "relationship", "date_of_birth", "gender", "phone_number", "home_location", "is_student", "ssn", "employee_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["first_name", "last_name", "middle_name", "relationship", "date_of_birth", "gender", "phone_number", "home_location", "is_student", "ssn", "employee_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisemployeeinput.py b/src/panora_sdk/models/unifiedhrisemployeeinput.py deleted file mode 100644 index 80d2dc5..0000000 --- a/src/panora_sdk/models/unifiedhrisemployeeinput.py +++ /dev/null @@ -1,152 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisEmployeeInputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployeeInputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployeeInputTypedDict(TypedDict): - groups: NotRequired[Nullable[List[str]]] - r"""The groups the employee belongs to""" - locations: NotRequired[Nullable[List[str]]] - r"""UUIDs of the of the Location associated with the company""" - employee_number: NotRequired[Nullable[str]] - r"""The employee number""" - company_id: NotRequired[Nullable[str]] - r"""The UUID of the associated company""" - first_name: NotRequired[Nullable[str]] - r"""The first name of the employee""" - last_name: NotRequired[Nullable[str]] - r"""The last name of the employee""" - preferred_name: NotRequired[Nullable[str]] - r"""The preferred name of the employee""" - display_full_name: NotRequired[Nullable[str]] - r"""The full display name of the employee""" - username: NotRequired[Nullable[str]] - r"""The username of the employee""" - work_email: NotRequired[Nullable[str]] - r"""The work email of the employee""" - personal_email: NotRequired[Nullable[str]] - r"""The personal email of the employee""" - mobile_phone_number: NotRequired[Nullable[str]] - r"""The mobile phone number of the employee""" - employments: NotRequired[Nullable[List[str]]] - r"""The employments of the employee""" - ssn: NotRequired[Nullable[str]] - r"""The Social Security Number of the employee""" - gender: NotRequired[Nullable[str]] - r"""The gender of the employee""" - ethnicity: NotRequired[Nullable[str]] - r"""The ethnicity of the employee""" - marital_status: NotRequired[Nullable[str]] - r"""The marital status of the employee""" - date_of_birth: NotRequired[Nullable[datetime]] - r"""The date of birth of the employee""" - start_date: NotRequired[Nullable[datetime]] - r"""The start date of the employee""" - employment_status: NotRequired[Nullable[str]] - r"""The employment status of the employee""" - termination_date: NotRequired[Nullable[datetime]] - r"""The termination date of the employee""" - avatar_url: NotRequired[Nullable[str]] - r"""The URL of the employee's avatar""" - manager_id: NotRequired[Nullable[str]] - r"""UUID of the manager (employee) of the employee""" - field_mappings: NotRequired[Nullable[UnifiedHrisEmployeeInputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedHrisEmployeeInput(BaseModel): - groups: OptionalNullable[List[str]] = UNSET - r"""The groups the employee belongs to""" - locations: OptionalNullable[List[str]] = UNSET - r"""UUIDs of the of the Location associated with the company""" - employee_number: OptionalNullable[str] = UNSET - r"""The employee number""" - company_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated company""" - first_name: OptionalNullable[str] = UNSET - r"""The first name of the employee""" - last_name: OptionalNullable[str] = UNSET - r"""The last name of the employee""" - preferred_name: OptionalNullable[str] = UNSET - r"""The preferred name of the employee""" - display_full_name: OptionalNullable[str] = UNSET - r"""The full display name of the employee""" - username: OptionalNullable[str] = UNSET - r"""The username of the employee""" - work_email: OptionalNullable[str] = UNSET - r"""The work email of the employee""" - personal_email: OptionalNullable[str] = UNSET - r"""The personal email of the employee""" - mobile_phone_number: OptionalNullable[str] = UNSET - r"""The mobile phone number of the employee""" - employments: OptionalNullable[List[str]] = UNSET - r"""The employments of the employee""" - ssn: OptionalNullable[str] = UNSET - r"""The Social Security Number of the employee""" - gender: OptionalNullable[str] = UNSET - r"""The gender of the employee""" - ethnicity: OptionalNullable[str] = UNSET - r"""The ethnicity of the employee""" - marital_status: OptionalNullable[str] = UNSET - r"""The marital status of the employee""" - date_of_birth: OptionalNullable[datetime] = UNSET - r"""The date of birth of the employee""" - start_date: OptionalNullable[datetime] = UNSET - r"""The start date of the employee""" - employment_status: OptionalNullable[str] = UNSET - r"""The employment status of the employee""" - termination_date: OptionalNullable[datetime] = UNSET - r"""The termination date of the employee""" - avatar_url: OptionalNullable[str] = UNSET - r"""The URL of the employee's avatar""" - manager_id: OptionalNullable[str] = UNSET - r"""UUID of the manager (employee) of the employee""" - field_mappings: OptionalNullable[UnifiedHrisEmployeeInputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["groups", "locations", "employee_number", "company_id", "first_name", "last_name", "preferred_name", "display_full_name", "username", "work_email", "personal_email", "mobile_phone_number", "employments", "ssn", "gender", "ethnicity", "marital_status", "date_of_birth", "start_date", "employment_status", "termination_date", "avatar_url", "manager_id", "field_mappings"] - nullable_fields = ["groups", "locations", "employee_number", "company_id", "first_name", "last_name", "preferred_name", "display_full_name", "username", "work_email", "personal_email", "mobile_phone_number", "employments", "ssn", "gender", "ethnicity", "marital_status", "date_of_birth", "start_date", "employment_status", "termination_date", "avatar_url", "manager_id", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisemployeeoutput.py b/src/panora_sdk/models/unifiedhrisemployeeoutput.py deleted file mode 100644 index 3461813..0000000 --- a/src/panora_sdk/models/unifiedhrisemployeeoutput.py +++ /dev/null @@ -1,190 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisEmployeeOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployeeOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployeeOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the employee in the context of the 3rd Party""" - - - -class UnifiedHrisEmployeeOutputRemoteData(BaseModel): - r"""The remote data of the employee in the context of the 3rd Party""" - - - -class UnifiedHrisEmployeeOutputTypedDict(TypedDict): - groups: NotRequired[Nullable[List[str]]] - r"""The groups the employee belongs to""" - locations: NotRequired[Nullable[List[str]]] - r"""UUIDs of the of the Location associated with the company""" - employee_number: NotRequired[Nullable[str]] - r"""The employee number""" - company_id: NotRequired[Nullable[str]] - r"""The UUID of the associated company""" - first_name: NotRequired[Nullable[str]] - r"""The first name of the employee""" - last_name: NotRequired[Nullable[str]] - r"""The last name of the employee""" - preferred_name: NotRequired[Nullable[str]] - r"""The preferred name of the employee""" - display_full_name: NotRequired[Nullable[str]] - r"""The full display name of the employee""" - username: NotRequired[Nullable[str]] - r"""The username of the employee""" - work_email: NotRequired[Nullable[str]] - r"""The work email of the employee""" - personal_email: NotRequired[Nullable[str]] - r"""The personal email of the employee""" - mobile_phone_number: NotRequired[Nullable[str]] - r"""The mobile phone number of the employee""" - employments: NotRequired[Nullable[List[str]]] - r"""The employments of the employee""" - ssn: NotRequired[Nullable[str]] - r"""The Social Security Number of the employee""" - gender: NotRequired[Nullable[str]] - r"""The gender of the employee""" - ethnicity: NotRequired[Nullable[str]] - r"""The ethnicity of the employee""" - marital_status: NotRequired[Nullable[str]] - r"""The marital status of the employee""" - date_of_birth: NotRequired[Nullable[datetime]] - r"""The date of birth of the employee""" - start_date: NotRequired[Nullable[datetime]] - r"""The start date of the employee""" - employment_status: NotRequired[Nullable[str]] - r"""The employment status of the employee""" - termination_date: NotRequired[Nullable[datetime]] - r"""The termination date of the employee""" - avatar_url: NotRequired[Nullable[str]] - r"""The URL of the employee's avatar""" - manager_id: NotRequired[Nullable[str]] - r"""UUID of the manager (employee) of the employee""" - field_mappings: NotRequired[Nullable[UnifiedHrisEmployeeOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the employee record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the employee in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisEmployeeOutputRemoteDataTypedDict]] - r"""The remote data of the employee in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the employee was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the employee record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the employee record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the employee was deleted in the remote system""" - - -class UnifiedHrisEmployeeOutput(BaseModel): - groups: OptionalNullable[List[str]] = UNSET - r"""The groups the employee belongs to""" - locations: OptionalNullable[List[str]] = UNSET - r"""UUIDs of the of the Location associated with the company""" - employee_number: OptionalNullable[str] = UNSET - r"""The employee number""" - company_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated company""" - first_name: OptionalNullable[str] = UNSET - r"""The first name of the employee""" - last_name: OptionalNullable[str] = UNSET - r"""The last name of the employee""" - preferred_name: OptionalNullable[str] = UNSET - r"""The preferred name of the employee""" - display_full_name: OptionalNullable[str] = UNSET - r"""The full display name of the employee""" - username: OptionalNullable[str] = UNSET - r"""The username of the employee""" - work_email: OptionalNullable[str] = UNSET - r"""The work email of the employee""" - personal_email: OptionalNullable[str] = UNSET - r"""The personal email of the employee""" - mobile_phone_number: OptionalNullable[str] = UNSET - r"""The mobile phone number of the employee""" - employments: OptionalNullable[List[str]] = UNSET - r"""The employments of the employee""" - ssn: OptionalNullable[str] = UNSET - r"""The Social Security Number of the employee""" - gender: OptionalNullable[str] = UNSET - r"""The gender of the employee""" - ethnicity: OptionalNullable[str] = UNSET - r"""The ethnicity of the employee""" - marital_status: OptionalNullable[str] = UNSET - r"""The marital status of the employee""" - date_of_birth: OptionalNullable[datetime] = UNSET - r"""The date of birth of the employee""" - start_date: OptionalNullable[datetime] = UNSET - r"""The start date of the employee""" - employment_status: OptionalNullable[str] = UNSET - r"""The employment status of the employee""" - termination_date: OptionalNullable[datetime] = UNSET - r"""The termination date of the employee""" - avatar_url: OptionalNullable[str] = UNSET - r"""The URL of the employee's avatar""" - manager_id: OptionalNullable[str] = UNSET - r"""UUID of the manager (employee) of the employee""" - field_mappings: OptionalNullable[UnifiedHrisEmployeeOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the employee record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the employee in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisEmployeeOutputRemoteData] = UNSET - r"""The remote data of the employee in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the employee was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the employee record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the employee record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the employee was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["groups", "locations", "employee_number", "company_id", "first_name", "last_name", "preferred_name", "display_full_name", "username", "work_email", "personal_email", "mobile_phone_number", "employments", "ssn", "gender", "ethnicity", "marital_status", "date_of_birth", "start_date", "employment_status", "termination_date", "avatar_url", "manager_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["groups", "locations", "employee_number", "company_id", "first_name", "last_name", "preferred_name", "display_full_name", "username", "work_email", "personal_email", "mobile_phone_number", "employments", "ssn", "gender", "ethnicity", "marital_status", "date_of_birth", "start_date", "employment_status", "termination_date", "avatar_url", "manager_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisemployeepayrollrunoutput.py b/src/panora_sdk/models/unifiedhrisemployeepayrollrunoutput.py deleted file mode 100644 index 6b076b5..0000000 --- a/src/panora_sdk/models/unifiedhrisemployeepayrollrunoutput.py +++ /dev/null @@ -1,141 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from .deductionitem import DeductionItem, DeductionItemTypedDict -from .earningitem import EarningItem, EarningItemTypedDict -from .taxitem import TaxItem, TaxItemTypedDict -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisEmployeepayrollrunOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployeepayrollrunOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployeepayrollrunOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the employee payroll run in the context of the 3rd Party""" - - - -class UnifiedHrisEmployeepayrollrunOutputRemoteData(BaseModel): - r"""The remote data of the employee payroll run in the context of the 3rd Party""" - - - -class UnifiedHrisEmployeepayrollrunOutputTypedDict(TypedDict): - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - payroll_run_id: NotRequired[Nullable[str]] - r"""The UUID of the associated payroll run""" - gross_pay: NotRequired[Nullable[float]] - r"""The gross pay amount""" - net_pay: NotRequired[Nullable[float]] - r"""The net pay amount""" - start_date: NotRequired[Nullable[datetime]] - r"""The start date of the pay period""" - end_date: NotRequired[Nullable[datetime]] - r"""The end date of the pay period""" - check_date: NotRequired[Nullable[datetime]] - r"""The date the check was issued""" - deductions: NotRequired[Nullable[List[DeductionItemTypedDict]]] - r"""The list of deductions for this payroll run""" - earnings: NotRequired[Nullable[List[EarningItemTypedDict]]] - r"""The list of earnings for this payroll run""" - taxes: NotRequired[Nullable[List[TaxItemTypedDict]]] - r"""The list of taxes for this payroll run""" - field_mappings: NotRequired[Nullable[UnifiedHrisEmployeepayrollrunOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the employee payroll run record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the employee payroll run in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisEmployeepayrollrunOutputRemoteDataTypedDict]] - r"""The remote data of the employee payroll run in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the employee payroll run was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the employee payroll run record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the employee payroll run record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the employee payroll run was deleted in the remote system""" - - -class UnifiedHrisEmployeepayrollrunOutput(BaseModel): - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - payroll_run_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated payroll run""" - gross_pay: OptionalNullable[float] = UNSET - r"""The gross pay amount""" - net_pay: OptionalNullable[float] = UNSET - r"""The net pay amount""" - start_date: OptionalNullable[datetime] = UNSET - r"""The start date of the pay period""" - end_date: OptionalNullable[datetime] = UNSET - r"""The end date of the pay period""" - check_date: OptionalNullable[datetime] = UNSET - r"""The date the check was issued""" - deductions: OptionalNullable[List[DeductionItem]] = UNSET - r"""The list of deductions for this payroll run""" - earnings: OptionalNullable[List[EarningItem]] = UNSET - r"""The list of earnings for this payroll run""" - taxes: OptionalNullable[List[TaxItem]] = UNSET - r"""The list of taxes for this payroll run""" - field_mappings: OptionalNullable[UnifiedHrisEmployeepayrollrunOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the employee payroll run record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the employee payroll run in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisEmployeepayrollrunOutputRemoteData] = UNSET - r"""The remote data of the employee payroll run in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the employee payroll run was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the employee payroll run record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the employee payroll run record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the employee payroll run was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["employee_id", "payroll_run_id", "gross_pay", "net_pay", "start_date", "end_date", "check_date", "deductions", "earnings", "taxes", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["employee_id", "payroll_run_id", "gross_pay", "net_pay", "start_date", "end_date", "check_date", "deductions", "earnings", "taxes", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisemployerbenefitoutput.py b/src/panora_sdk/models/unifiedhrisemployerbenefitoutput.py deleted file mode 100644 index ea625f6..0000000 --- a/src/panora_sdk/models/unifiedhrisemployerbenefitoutput.py +++ /dev/null @@ -1,114 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisEmployerbenefitOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployerbenefitOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmployerbenefitOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the employer benefit in the context of the 3rd Party""" - - - -class UnifiedHrisEmployerbenefitOutputRemoteData(BaseModel): - r"""The remote data of the employer benefit in the context of the 3rd Party""" - - - -class UnifiedHrisEmployerbenefitOutputTypedDict(TypedDict): - benefit_plan_type: NotRequired[Nullable[str]] - r"""The type of the benefit plan""" - name: NotRequired[Nullable[str]] - r"""The name of the employer benefit""" - description: NotRequired[Nullable[str]] - r"""The description of the employer benefit""" - deduction_code: NotRequired[Nullable[str]] - r"""The deduction code for the employer benefit""" - field_mappings: NotRequired[Nullable[UnifiedHrisEmployerbenefitOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the employer benefit record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the employer benefit in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisEmployerbenefitOutputRemoteDataTypedDict]] - r"""The remote data of the employer benefit in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the employer benefit was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the employer benefit record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the employer benefit record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the employer benefit was deleted in the remote system""" - - -class UnifiedHrisEmployerbenefitOutput(BaseModel): - benefit_plan_type: OptionalNullable[str] = UNSET - r"""The type of the benefit plan""" - name: OptionalNullable[str] = UNSET - r"""The name of the employer benefit""" - description: OptionalNullable[str] = UNSET - r"""The description of the employer benefit""" - deduction_code: OptionalNullable[str] = UNSET - r"""The deduction code for the employer benefit""" - field_mappings: OptionalNullable[UnifiedHrisEmployerbenefitOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the employer benefit record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the employer benefit in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisEmployerbenefitOutputRemoteData] = UNSET - r"""The remote data of the employer benefit in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the employer benefit was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the employer benefit record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the employer benefit record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the employer benefit was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["benefit_plan_type", "name", "description", "deduction_code", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["benefit_plan_type", "name", "description", "deduction_code", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisemploymentoutput.py b/src/panora_sdk/models/unifiedhrisemploymentoutput.py deleted file mode 100644 index 456ead3..0000000 --- a/src/panora_sdk/models/unifiedhrisemploymentoutput.py +++ /dev/null @@ -1,138 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisEmploymentOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmploymentOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisEmploymentOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the employment in the context of the 3rd Party""" - - - -class UnifiedHrisEmploymentOutputRemoteData(BaseModel): - r"""The remote data of the employment in the context of the 3rd Party""" - - - -class UnifiedHrisEmploymentOutputTypedDict(TypedDict): - job_title: NotRequired[Nullable[str]] - r"""The job title of the employment""" - pay_rate: NotRequired[Nullable[float]] - r"""The pay rate of the employment""" - pay_period: NotRequired[Nullable[str]] - r"""The pay period of the employment""" - pay_frequency: NotRequired[Nullable[str]] - r"""The pay frequency of the employment""" - pay_currency: NotRequired[Nullable[str]] - r"""The currency of the pay""" - flsa_status: NotRequired[Nullable[str]] - r"""The FLSA status of the employment""" - effective_date: NotRequired[Nullable[datetime]] - r"""The effective date of the employment""" - employment_type: NotRequired[Nullable[str]] - r"""The type of employment""" - pay_group_id: NotRequired[Nullable[str]] - r"""The UUID of the associated pay group""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - field_mappings: NotRequired[Nullable[UnifiedHrisEmploymentOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the employment record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the employment in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisEmploymentOutputRemoteDataTypedDict]] - r"""The remote data of the employment in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the employment was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the employment record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the employment record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the employment was deleted in the remote system""" - - -class UnifiedHrisEmploymentOutput(BaseModel): - job_title: OptionalNullable[str] = UNSET - r"""The job title of the employment""" - pay_rate: OptionalNullable[float] = UNSET - r"""The pay rate of the employment""" - pay_period: OptionalNullable[str] = UNSET - r"""The pay period of the employment""" - pay_frequency: OptionalNullable[str] = UNSET - r"""The pay frequency of the employment""" - pay_currency: OptionalNullable[str] = UNSET - r"""The currency of the pay""" - flsa_status: OptionalNullable[str] = UNSET - r"""The FLSA status of the employment""" - effective_date: OptionalNullable[datetime] = UNSET - r"""The effective date of the employment""" - employment_type: OptionalNullable[str] = UNSET - r"""The type of employment""" - pay_group_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated pay group""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - field_mappings: OptionalNullable[UnifiedHrisEmploymentOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the employment record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the employment in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisEmploymentOutputRemoteData] = UNSET - r"""The remote data of the employment in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the employment was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the employment record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the employment record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the employment was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["job_title", "pay_rate", "pay_period", "pay_frequency", "pay_currency", "flsa_status", "effective_date", "employment_type", "pay_group_id", "employee_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["job_title", "pay_rate", "pay_period", "pay_frequency", "pay_currency", "flsa_status", "effective_date", "employment_type", "pay_group_id", "employee_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrisgroupoutput.py b/src/panora_sdk/models/unifiedhrisgroupoutput.py deleted file mode 100644 index 78684eb..0000000 --- a/src/panora_sdk/models/unifiedhrisgroupoutput.py +++ /dev/null @@ -1,110 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisGroupOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisGroupOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisGroupOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the group in the context of the 3rd Party""" - - - -class UnifiedHrisGroupOutputRemoteData(BaseModel): - r"""The remote data of the group in the context of the 3rd Party""" - - - -class UnifiedHrisGroupOutputTypedDict(TypedDict): - parent_group: NotRequired[Nullable[str]] - r"""The UUID of the parent group""" - name: NotRequired[Nullable[str]] - r"""The name of the group""" - type: NotRequired[Nullable[str]] - r"""The type of the group""" - field_mappings: NotRequired[Nullable[UnifiedHrisGroupOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the group record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the group in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisGroupOutputRemoteDataTypedDict]] - r"""The remote data of the group in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the group was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the group record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the group record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the group was deleted in the remote system""" - - -class UnifiedHrisGroupOutput(BaseModel): - parent_group: OptionalNullable[str] = UNSET - r"""The UUID of the parent group""" - name: OptionalNullable[str] = UNSET - r"""The name of the group""" - type: OptionalNullable[str] = UNSET - r"""The type of the group""" - field_mappings: OptionalNullable[UnifiedHrisGroupOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the group record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the group in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisGroupOutputRemoteData] = UNSET - r"""The remote data of the group in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the group was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the group record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the group record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the group was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["parent_group", "name", "type", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["parent_group", "name", "type", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrislocationoutput.py b/src/panora_sdk/models/unifiedhrislocationoutput.py deleted file mode 100644 index c93c8fc..0000000 --- a/src/panora_sdk/models/unifiedhrislocationoutput.py +++ /dev/null @@ -1,142 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisLocationOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisLocationOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisLocationOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the location in the context of the 3rd Party""" - - - -class UnifiedHrisLocationOutputRemoteData(BaseModel): - r"""The remote data of the location in the context of the 3rd Party""" - - - -class UnifiedHrisLocationOutputTypedDict(TypedDict): - name: NotRequired[Nullable[str]] - r"""The name of the location""" - phone_number: NotRequired[Nullable[str]] - r"""The phone number of the location""" - street_1: NotRequired[Nullable[str]] - r"""The first line of the street address""" - street_2: NotRequired[Nullable[str]] - r"""The second line of the street address""" - city: NotRequired[Nullable[str]] - r"""The city of the location""" - state: NotRequired[Nullable[str]] - r"""The state or region of the location""" - zip_code: NotRequired[Nullable[str]] - r"""The zip or postal code of the location""" - country: NotRequired[Nullable[str]] - r"""The country of the location""" - location_type: NotRequired[Nullable[str]] - r"""The type of the location""" - company_id: NotRequired[Nullable[str]] - r"""The UUID of the company associated with the location""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the employee associated with the location""" - field_mappings: NotRequired[Nullable[UnifiedHrisLocationOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the location record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the location in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisLocationOutputRemoteDataTypedDict]] - r"""The remote data of the location in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the location was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the location record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the location record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the location was deleted in the remote system""" - - -class UnifiedHrisLocationOutput(BaseModel): - name: OptionalNullable[str] = UNSET - r"""The name of the location""" - phone_number: OptionalNullable[str] = UNSET - r"""The phone number of the location""" - street_1: OptionalNullable[str] = UNSET - r"""The first line of the street address""" - street_2: OptionalNullable[str] = UNSET - r"""The second line of the street address""" - city: OptionalNullable[str] = UNSET - r"""The city of the location""" - state: OptionalNullable[str] = UNSET - r"""The state or region of the location""" - zip_code: OptionalNullable[str] = UNSET - r"""The zip or postal code of the location""" - country: OptionalNullable[str] = UNSET - r"""The country of the location""" - location_type: OptionalNullable[str] = UNSET - r"""The type of the location""" - company_id: OptionalNullable[str] = UNSET - r"""The UUID of the company associated with the location""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the employee associated with the location""" - field_mappings: OptionalNullable[UnifiedHrisLocationOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the location record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the location in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisLocationOutputRemoteData] = UNSET - r"""The remote data of the location in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the location was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the location record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the location record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the location was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["name", "phone_number", "street_1", "street_2", "city", "state", "zip_code", "country", "location_type", "company_id", "employee_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["name", "phone_number", "street_1", "street_2", "city", "state", "zip_code", "country", "location_type", "company_id", "employee_id", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrispaygroupoutput.py b/src/panora_sdk/models/unifiedhrispaygroupoutput.py deleted file mode 100644 index 0e6412c..0000000 --- a/src/panora_sdk/models/unifiedhrispaygroupoutput.py +++ /dev/null @@ -1,102 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisPaygroupOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisPaygroupOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisPaygroupOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the pay group in the context of the 3rd Party""" - - - -class UnifiedHrisPaygroupOutputRemoteData(BaseModel): - r"""The remote data of the pay group in the context of the 3rd Party""" - - - -class UnifiedHrisPaygroupOutputTypedDict(TypedDict): - pay_group_name: NotRequired[Nullable[str]] - r"""The name of the pay group""" - field_mappings: NotRequired[Nullable[UnifiedHrisPaygroupOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the pay group record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the pay group in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisPaygroupOutputRemoteDataTypedDict]] - r"""The remote data of the pay group in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the pay group was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the pay group record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the pay group record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the pay group was deleted in the remote system""" - - -class UnifiedHrisPaygroupOutput(BaseModel): - pay_group_name: OptionalNullable[str] = UNSET - r"""The name of the pay group""" - field_mappings: OptionalNullable[UnifiedHrisPaygroupOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the pay group record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the pay group in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisPaygroupOutputRemoteData] = UNSET - r"""The remote data of the pay group in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the pay group was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the pay group record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the pay group record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the pay group was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["pay_group_name", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["pay_group_name", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhrispayrollrunoutput.py b/src/panora_sdk/models/unifiedhrispayrollrunoutput.py deleted file mode 100644 index 7e46e64..0000000 --- a/src/panora_sdk/models/unifiedhrispayrollrunoutput.py +++ /dev/null @@ -1,122 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisPayrollrunOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisPayrollrunOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisPayrollrunOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the payroll run in the context of the 3rd Party""" - - - -class UnifiedHrisPayrollrunOutputRemoteData(BaseModel): - r"""The remote data of the payroll run in the context of the 3rd Party""" - - - -class UnifiedHrisPayrollrunOutputTypedDict(TypedDict): - run_state: NotRequired[Nullable[str]] - r"""The state of the payroll run""" - run_type: NotRequired[Nullable[str]] - r"""The type of the payroll run""" - start_date: NotRequired[Nullable[datetime]] - r"""The start date of the payroll run""" - end_date: NotRequired[Nullable[datetime]] - r"""The end date of the payroll run""" - check_date: NotRequired[Nullable[datetime]] - r"""The check date of the payroll run""" - field_mappings: NotRequired[Nullable[UnifiedHrisPayrollrunOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the payroll run record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the payroll run in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisPayrollrunOutputRemoteDataTypedDict]] - r"""The remote data of the payroll run in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the payroll run was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the payroll run record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the payroll run record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the payroll run was deleted in the remote system""" - employee_payroll_runs: NotRequired[Nullable[List[str]]] - r"""The UUIDs of the employee payroll runs associated with this payroll run""" - - -class UnifiedHrisPayrollrunOutput(BaseModel): - run_state: OptionalNullable[str] = UNSET - r"""The state of the payroll run""" - run_type: OptionalNullable[str] = UNSET - r"""The type of the payroll run""" - start_date: OptionalNullable[datetime] = UNSET - r"""The start date of the payroll run""" - end_date: OptionalNullable[datetime] = UNSET - r"""The end date of the payroll run""" - check_date: OptionalNullable[datetime] = UNSET - r"""The check date of the payroll run""" - field_mappings: OptionalNullable[UnifiedHrisPayrollrunOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the payroll run record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the payroll run in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisPayrollrunOutputRemoteData] = UNSET - r"""The remote data of the payroll run in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the payroll run was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the payroll run record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the payroll run record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the payroll run was deleted in the remote system""" - employee_payroll_runs: OptionalNullable[List[str]] = UNSET - r"""The UUIDs of the employee payroll runs associated with this payroll run""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["run_state", "run_type", "start_date", "end_date", "check_date", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted", "employee_payroll_runs"] - nullable_fields = ["run_state", "run_type", "start_date", "end_date", "check_date", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted", "employee_payroll_runs"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhristimeoffbalanceoutput.py b/src/panora_sdk/models/unifiedhristimeoffbalanceoutput.py deleted file mode 100644 index 80d8024..0000000 --- a/src/panora_sdk/models/unifiedhristimeoffbalanceoutput.py +++ /dev/null @@ -1,113 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisTimeoffbalanceOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimeoffbalanceOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimeoffbalanceOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the time off balance in the context of the 3rd Party""" - - - -class UnifiedHrisTimeoffbalanceOutputRemoteData(BaseModel): - r"""The remote data of the time off balance in the context of the 3rd Party""" - - - -class UnifiedHrisTimeoffbalanceOutputTypedDict(TypedDict): - balance: NotRequired[Nullable[float]] - r"""The current balance of time off""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - used: NotRequired[Nullable[float]] - r"""The amount of time off used""" - policy_type: NotRequired[Nullable[str]] - r"""The type of time off policy""" - field_mappings: NotRequired[Nullable[UnifiedHrisTimeoffbalanceOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the time off balance record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the time off balance in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisTimeoffbalanceOutputRemoteDataTypedDict]] - r"""The remote data of the time off balance in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[str]] - r"""The date when the time off balance was created in the 3rd party system""" - created_at: NotRequired[Nullable[str]] - r"""The created date of the time off balance record""" - modified_at: NotRequired[Nullable[str]] - r"""The last modified date of the time off balance record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the time off balance was deleted in the remote system""" - - -class UnifiedHrisTimeoffbalanceOutput(BaseModel): - balance: OptionalNullable[float] = UNSET - r"""The current balance of time off""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - used: OptionalNullable[float] = UNSET - r"""The amount of time off used""" - policy_type: OptionalNullable[str] = UNSET - r"""The type of time off policy""" - field_mappings: OptionalNullable[UnifiedHrisTimeoffbalanceOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the time off balance record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the time off balance in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisTimeoffbalanceOutputRemoteData] = UNSET - r"""The remote data of the time off balance in the context of the 3rd Party""" - remote_created_at: OptionalNullable[str] = UNSET - r"""The date when the time off balance was created in the 3rd party system""" - created_at: OptionalNullable[str] = UNSET - r"""The created date of the time off balance record""" - modified_at: OptionalNullable[str] = UNSET - r"""The last modified date of the time off balance record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the time off balance was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["balance", "employee_id", "used", "policy_type", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["balance", "employee_id", "used", "policy_type", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhristimeoffinput.py b/src/panora_sdk/models/unifiedhristimeoffinput.py deleted file mode 100644 index 429c018..0000000 --- a/src/panora_sdk/models/unifiedhristimeoffinput.py +++ /dev/null @@ -1,96 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisTimeoffInputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimeoffInputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimeoffInputTypedDict(TypedDict): - employee: NotRequired[Nullable[str]] - r"""The UUID of the employee taking time off""" - approver: NotRequired[Nullable[str]] - r"""The UUID of the approver for the time off request""" - status: NotRequired[Nullable[str]] - r"""The status of the time off request""" - employee_note: NotRequired[Nullable[str]] - r"""A note from the employee about the time off request""" - units: NotRequired[Nullable[str]] - r"""The units used for the time off (e.g., Days, Hours)""" - amount: NotRequired[Nullable[float]] - r"""The amount of time off requested""" - request_type: NotRequired[Nullable[str]] - r"""The type of time off request""" - start_time: NotRequired[Nullable[datetime]] - r"""The start time of the time off""" - end_time: NotRequired[Nullable[datetime]] - r"""The end time of the time off""" - field_mappings: NotRequired[Nullable[UnifiedHrisTimeoffInputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedHrisTimeoffInput(BaseModel): - employee: OptionalNullable[str] = UNSET - r"""The UUID of the employee taking time off""" - approver: OptionalNullable[str] = UNSET - r"""The UUID of the approver for the time off request""" - status: OptionalNullable[str] = UNSET - r"""The status of the time off request""" - employee_note: OptionalNullable[str] = UNSET - r"""A note from the employee about the time off request""" - units: OptionalNullable[str] = UNSET - r"""The units used for the time off (e.g., Days, Hours)""" - amount: OptionalNullable[float] = UNSET - r"""The amount of time off requested""" - request_type: OptionalNullable[str] = UNSET - r"""The type of time off request""" - start_time: OptionalNullable[datetime] = UNSET - r"""The start time of the time off""" - end_time: OptionalNullable[datetime] = UNSET - r"""The end time of the time off""" - field_mappings: OptionalNullable[UnifiedHrisTimeoffInputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["employee", "approver", "status", "employee_note", "units", "amount", "request_type", "start_time", "end_time", "field_mappings"] - nullable_fields = ["employee", "approver", "status", "employee_note", "units", "amount", "request_type", "start_time", "end_time", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhristimeoffoutput.py b/src/panora_sdk/models/unifiedhristimeoffoutput.py deleted file mode 100644 index e2a5dcc..0000000 --- a/src/panora_sdk/models/unifiedhristimeoffoutput.py +++ /dev/null @@ -1,134 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisTimeoffOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimeoffOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimeoffOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the time off in the context of the 3rd Party""" - - - -class UnifiedHrisTimeoffOutputRemoteData(BaseModel): - r"""The remote data of the time off in the context of the 3rd Party""" - - - -class UnifiedHrisTimeoffOutputTypedDict(TypedDict): - employee: NotRequired[Nullable[str]] - r"""The UUID of the employee taking time off""" - approver: NotRequired[Nullable[str]] - r"""The UUID of the approver for the time off request""" - status: NotRequired[Nullable[str]] - r"""The status of the time off request""" - employee_note: NotRequired[Nullable[str]] - r"""A note from the employee about the time off request""" - units: NotRequired[Nullable[str]] - r"""The units used for the time off (e.g., Days, Hours)""" - amount: NotRequired[Nullable[float]] - r"""The amount of time off requested""" - request_type: NotRequired[Nullable[str]] - r"""The type of time off request""" - start_time: NotRequired[Nullable[datetime]] - r"""The start time of the time off""" - end_time: NotRequired[Nullable[datetime]] - r"""The end time of the time off""" - field_mappings: NotRequired[Nullable[UnifiedHrisTimeoffOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the time off record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the time off in the context of the 3rd Party""" - remote_data: NotRequired[Nullable[UnifiedHrisTimeoffOutputRemoteDataTypedDict]] - r"""The remote data of the time off in the context of the 3rd Party""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the time off was created in the 3rd party system""" - created_at: NotRequired[Nullable[datetime]] - r"""The created date of the time off record""" - modified_at: NotRequired[Nullable[datetime]] - r"""The last modified date of the time off record""" - remote_was_deleted: NotRequired[Nullable[bool]] - r"""Indicates if the time off was deleted in the remote system""" - - -class UnifiedHrisTimeoffOutput(BaseModel): - employee: OptionalNullable[str] = UNSET - r"""The UUID of the employee taking time off""" - approver: OptionalNullable[str] = UNSET - r"""The UUID of the approver for the time off request""" - status: OptionalNullable[str] = UNSET - r"""The status of the time off request""" - employee_note: OptionalNullable[str] = UNSET - r"""A note from the employee about the time off request""" - units: OptionalNullable[str] = UNSET - r"""The units used for the time off (e.g., Days, Hours)""" - amount: OptionalNullable[float] = UNSET - r"""The amount of time off requested""" - request_type: OptionalNullable[str] = UNSET - r"""The type of time off request""" - start_time: OptionalNullable[datetime] = UNSET - r"""The start time of the time off""" - end_time: OptionalNullable[datetime] = UNSET - r"""The end time of the time off""" - field_mappings: OptionalNullable[UnifiedHrisTimeoffOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the time off record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the time off in the context of the 3rd Party""" - remote_data: OptionalNullable[UnifiedHrisTimeoffOutputRemoteData] = UNSET - r"""The remote data of the time off in the context of the 3rd Party""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the time off was created in the 3rd party system""" - created_at: OptionalNullable[datetime] = UNSET - r"""The created date of the time off record""" - modified_at: OptionalNullable[datetime] = UNSET - r"""The last modified date of the time off record""" - remote_was_deleted: OptionalNullable[bool] = UNSET - r"""Indicates if the time off was deleted in the remote system""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["employee", "approver", "status", "employee_note", "units", "amount", "request_type", "start_time", "end_time", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - nullable_fields = ["employee", "approver", "status", "employee_note", "units", "amount", "request_type", "start_time", "end_time", "field_mappings", "id", "remote_id", "remote_data", "remote_created_at", "created_at", "modified_at", "remote_was_deleted"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhristimesheetentryinput.py b/src/panora_sdk/models/unifiedhristimesheetentryinput.py deleted file mode 100644 index 8635e40..0000000 --- a/src/panora_sdk/models/unifiedhristimesheetentryinput.py +++ /dev/null @@ -1,80 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Optional, TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisTimesheetEntryInputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimesheetEntryInputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimesheetEntryInputTypedDict(TypedDict): - hours_worked: NotRequired[Nullable[float]] - r"""The number of hours worked""" - start_time: NotRequired[Nullable[datetime]] - r"""The start time of the timesheet entry""" - end_time: NotRequired[Nullable[datetime]] - r"""The end time of the timesheet entry""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - remote_was_deleted: NotRequired[bool] - r"""Indicates if the timesheet entry was deleted in the remote system""" - field_mappings: NotRequired[Nullable[UnifiedHrisTimesheetEntryInputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - -class UnifiedHrisTimesheetEntryInput(BaseModel): - hours_worked: OptionalNullable[float] = UNSET - r"""The number of hours worked""" - start_time: OptionalNullable[datetime] = UNSET - r"""The start time of the timesheet entry""" - end_time: OptionalNullable[datetime] = UNSET - r"""The end time of the timesheet entry""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - remote_was_deleted: Optional[bool] = None - r"""Indicates if the timesheet entry was deleted in the remote system""" - field_mappings: OptionalNullable[UnifiedHrisTimesheetEntryInputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["hours_worked", "start_time", "end_time", "employee_id", "remote_was_deleted", "field_mappings"] - nullable_fields = ["hours_worked", "start_time", "end_time", "employee_id", "field_mappings"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedhristimesheetentryoutput.py b/src/panora_sdk/models/unifiedhristimesheetentryoutput.py deleted file mode 100644 index ba04874..0000000 --- a/src/panora_sdk/models/unifiedhristimesheetentryoutput.py +++ /dev/null @@ -1,114 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL -from pydantic import model_serializer -from typing import Optional, TypedDict -from typing_extensions import NotRequired - - -class UnifiedHrisTimesheetEntryOutputFieldMappingsTypedDict(TypedDict): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimesheetEntryOutputFieldMappings(BaseModel): - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - - - -class UnifiedHrisTimesheetEntryOutputRemoteDataTypedDict(TypedDict): - r"""The remote data of the timesheet entry in the context of the 3rd Party""" - - - -class UnifiedHrisTimesheetEntryOutputRemoteData(BaseModel): - r"""The remote data of the timesheet entry in the context of the 3rd Party""" - - - -class UnifiedHrisTimesheetEntryOutputTypedDict(TypedDict): - hours_worked: NotRequired[Nullable[float]] - r"""The number of hours worked""" - start_time: NotRequired[Nullable[datetime]] - r"""The start time of the timesheet entry""" - end_time: NotRequired[Nullable[datetime]] - r"""The end time of the timesheet entry""" - employee_id: NotRequired[Nullable[str]] - r"""The UUID of the associated employee""" - remote_was_deleted: NotRequired[bool] - r"""Indicates if the timesheet entry was deleted in the remote system""" - field_mappings: NotRequired[Nullable[UnifiedHrisTimesheetEntryOutputFieldMappingsTypedDict]] - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: NotRequired[Nullable[str]] - r"""The UUID of the timesheet entry record""" - remote_id: NotRequired[Nullable[str]] - r"""The remote ID of the timesheet entry""" - remote_created_at: NotRequired[Nullable[datetime]] - r"""The date when the timesheet entry was created in the remote system""" - created_at: NotRequired[datetime] - r"""The created date of the timesheet entry""" - modified_at: NotRequired[datetime] - r"""The last modified date of the timesheet entry""" - remote_data: NotRequired[Nullable[UnifiedHrisTimesheetEntryOutputRemoteDataTypedDict]] - r"""The remote data of the timesheet entry in the context of the 3rd Party""" - - -class UnifiedHrisTimesheetEntryOutput(BaseModel): - hours_worked: OptionalNullable[float] = UNSET - r"""The number of hours worked""" - start_time: OptionalNullable[datetime] = UNSET - r"""The start time of the timesheet entry""" - end_time: OptionalNullable[datetime] = UNSET - r"""The end time of the timesheet entry""" - employee_id: OptionalNullable[str] = UNSET - r"""The UUID of the associated employee""" - remote_was_deleted: Optional[bool] = None - r"""Indicates if the timesheet entry was deleted in the remote system""" - field_mappings: OptionalNullable[UnifiedHrisTimesheetEntryOutputFieldMappings] = UNSET - r"""The custom field mappings of the object between the remote 3rd party & Panora""" - id: OptionalNullable[str] = UNSET - r"""The UUID of the timesheet entry record""" - remote_id: OptionalNullable[str] = UNSET - r"""The remote ID of the timesheet entry""" - remote_created_at: OptionalNullable[datetime] = UNSET - r"""The date when the timesheet entry was created in the remote system""" - created_at: Optional[datetime] = None - r"""The created date of the timesheet entry""" - modified_at: Optional[datetime] = None - r"""The last modified date of the timesheet entry""" - remote_data: OptionalNullable[UnifiedHrisTimesheetEntryOutputRemoteData] = UNSET - r"""The remote data of the timesheet entry in the context of the 3rd Party""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = ["hours_worked", "start_time", "end_time", "employee_id", "remote_was_deleted", "field_mappings", "id", "remote_id", "remote_created_at", "created_at", "modified_at", "remote_data"] - nullable_fields = ["hours_worked", "start_time", "end_time", "employee_id", "field_mappings", "id", "remote_id", "remote_created_at", "remote_data"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/unifiedmarketingautomationactioninput.py b/src/panora_sdk/models/unifiedmarketingautomationactioninput.py index d64e919..cb715ff 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationactioninput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationactioninput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationActionInputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationActionInput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationactionoutput.py b/src/panora_sdk/models/unifiedmarketingautomationactionoutput.py index 72bc9b8..cf0386a 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationactionoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationactionoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationActionOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationActionOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationautomationinput.py b/src/panora_sdk/models/unifiedmarketingautomationautomationinput.py index 199bb9c..2b4fe6a 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationautomationinput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationautomationinput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationAutomationInputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationAutomationInput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationautomationoutput.py b/src/panora_sdk/models/unifiedmarketingautomationautomationoutput.py index eda446f..6001774 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationautomationoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationautomationoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationAutomationOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationAutomationOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationcampaigninput.py b/src/panora_sdk/models/unifiedmarketingautomationcampaigninput.py index 86c3fcf..f71ff37 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationcampaigninput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationcampaigninput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationCampaignInputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationCampaignInput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationcampaignoutput.py b/src/panora_sdk/models/unifiedmarketingautomationcampaignoutput.py index 32fa6af..0b20a6c 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationcampaignoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationcampaignoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationCampaignOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationCampaignOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationcontactinput.py b/src/panora_sdk/models/unifiedmarketingautomationcontactinput.py index 2977ceb..2e2d604 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationcontactinput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationcontactinput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationContactInputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationContactInput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationcontactoutput.py b/src/panora_sdk/models/unifiedmarketingautomationcontactoutput.py index a140a86..e807aa9 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationcontactoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationcontactoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationContactOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationContactOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationemailoutput.py b/src/panora_sdk/models/unifiedmarketingautomationemailoutput.py index b948dc0..c5e8088 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationemailoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationemailoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationEmailOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationEmailOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationeventoutput.py b/src/panora_sdk/models/unifiedmarketingautomationeventoutput.py index a1d82a3..8d160fe 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationeventoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationeventoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationEventOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationEventOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationlistinput.py b/src/panora_sdk/models/unifiedmarketingautomationlistinput.py index 74b3832..3b376a0 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationlistinput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationlistinput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationListInputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationListInput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationlistoutput.py b/src/panora_sdk/models/unifiedmarketingautomationlistoutput.py index 01fa0e9..bd46c25 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationlistoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationlistoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationListOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationListOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationmessageoutput.py b/src/panora_sdk/models/unifiedmarketingautomationmessageoutput.py index 09f8312..da0e5ac 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationmessageoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationmessageoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationMessageOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationMessageOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationtemplateinput.py b/src/panora_sdk/models/unifiedmarketingautomationtemplateinput.py index 281c429..72a1034 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationtemplateinput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationtemplateinput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationTemplateInputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationTemplateInput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationtemplateoutput.py b/src/panora_sdk/models/unifiedmarketingautomationtemplateoutput.py index 99832ed..e34d4c4 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationtemplateoutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationtemplateoutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationTemplateOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationTemplateOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedmarketingautomationuseroutput.py b/src/panora_sdk/models/unifiedmarketingautomationuseroutput.py index 2182560..7ce0103 100644 --- a/src/panora_sdk/models/unifiedmarketingautomationuseroutput.py +++ b/src/panora_sdk/models/unifiedmarketingautomationuseroutput.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UnifiedMarketingautomationUserOutputTypedDict(TypedDict): pass - + class UnifiedMarketingautomationUserOutput(BaseModel): pass - diff --git a/src/panora_sdk/models/unifiedticketingaccountoutput.py b/src/panora_sdk/models/unifiedticketingaccountoutput.py index b0f4ba1..e5cc2ca 100644 --- a/src/panora_sdk/models/unifiedticketingaccountoutput.py +++ b/src/panora_sdk/models/unifiedticketingaccountoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingAccountOutputTypedDict(TypedDict): @@ -25,30 +31,54 @@ class UnifiedTicketingAccountOutputTypedDict(TypedDict): r"""The created date of the account""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the account""" - + class UnifiedTicketingAccountOutput(BaseModel): name: Nullable[str] r"""The name of the account""" + domains: OptionalNullable[List[str]] = UNSET r"""The domains of the account""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the account between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the account""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the account in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the account in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the account""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the account""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["domains", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "domains", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "domains", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "domains", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -58,21 +88,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedticketingattachmentinput.py b/src/panora_sdk/models/unifiedticketingattachmentinput.py index 7ed7ca5..2f422fa 100644 --- a/src/panora_sdk/models/unifiedticketingattachmentinput.py +++ b/src/panora_sdk/models/unifiedticketingattachmentinput.py @@ -1,10 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingAttachmentInputTypedDict(TypedDict): @@ -20,26 +26,38 @@ class UnifiedTicketingAttachmentInputTypedDict(TypedDict): r"""The UUID of the comment the attachment is tied to""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the attachment between the remote 3rd party & Panora""" - + class UnifiedTicketingAttachmentInput(BaseModel): file_name: Nullable[str] r"""The file name of the attachment""" + file_url: Nullable[str] r"""The file url of the attachment""" + uploader: Nullable[str] r"""The uploader's UUID of the attachment""" + ticket_id: OptionalNullable[str] = UNSET r"""The UUID of the ticket the attachment is tied to""" + comment_id: OptionalNullable[str] = UNSET r"""The UUID of the comment the attachment is tied to""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the attachment between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = ["ticket_id", "comment_id", "field_mappings"] - nullable_fields = ["file_name", "file_url", "uploader", "ticket_id", "comment_id", "field_mappings"] + nullable_fields = [ + "file_name", + "file_url", + "uploader", + "ticket_id", + "comment_id", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -49,21 +67,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedticketingattachmentoutput.py b/src/panora_sdk/models/unifiedticketingattachmentoutput.py index a6261d9..1af58b4 100644 --- a/src/panora_sdk/models/unifiedticketingattachmentoutput.py +++ b/src/panora_sdk/models/unifiedticketingattachmentoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingAttachmentOutputTypedDict(TypedDict): @@ -31,36 +37,67 @@ class UnifiedTicketingAttachmentOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedTicketingAttachmentOutput(BaseModel): file_name: Nullable[str] r"""The file name of the attachment""" + file_url: Nullable[str] r"""The file url of the attachment""" + uploader: Nullable[str] r"""The uploader's UUID of the attachment""" + ticket_id: OptionalNullable[str] = UNSET r"""The UUID of the ticket the attachment is tied to""" + comment_id: OptionalNullable[str] = UNSET r"""The UUID of the comment the attachment is tied to""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the attachment between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the attachment""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the attachment in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the attachment in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["ticket_id", "comment_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["file_name", "file_url", "uploader", "ticket_id", "comment_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "ticket_id", + "comment_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "file_name", + "file_url", + "uploader", + "ticket_id", + "comment_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -70,21 +107,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedticketingcollectionoutput.py b/src/panora_sdk/models/unifiedticketingcollectionoutput.py index d815732..1f8dfcb 100644 --- a/src/panora_sdk/models/unifiedticketingcollectionoutput.py +++ b/src/panora_sdk/models/unifiedticketingcollectionoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingCollectionOutputTypedDict(TypedDict): @@ -25,30 +31,54 @@ class UnifiedTicketingCollectionOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedTicketingCollectionOutput(BaseModel): name: Nullable[str] r"""The name of the collection""" + description: OptionalNullable[str] = UNSET r"""The description of the collection""" + collection_type: OptionalNullable[str] = UNSET r"""The type of the collection. Authorized values are either PROJECT or LIST""" + id: OptionalNullable[str] = UNSET r"""The UUID of the collection""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the collection in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the collection in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["description", "collection_type", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "description", "collection_type", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "description", + "collection_type", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "description", + "collection_type", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -58,21 +88,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedticketingcommentinput.py b/src/panora_sdk/models/unifiedticketingcommentinput.py index 1bd7182..843f99c 100644 --- a/src/panora_sdk/models/unifiedticketingcommentinput.py +++ b/src/panora_sdk/models/unifiedticketingcommentinput.py @@ -1,11 +1,28 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingattachmentoutput import UnifiedTicketingAttachmentOutput, UnifiedTicketingAttachmentOutputTypedDict -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from .unifiedticketingattachmentoutput import ( + UnifiedTicketingAttachmentOutput, + UnifiedTicketingAttachmentOutputTypedDict, +) +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import List, TypedDict, Union -from typing_extensions import NotRequired +from typing import List, Union +from typing_extensions import NotRequired, TypedDict + + +UnifiedTicketingCommentInputAttachmentsTypedDict = Union[ + UnifiedTicketingAttachmentOutputTypedDict, str +] + + +UnifiedTicketingCommentInputAttachments = Union[UnifiedTicketingAttachmentOutput, str] class UnifiedTicketingCommentInputTypedDict(TypedDict): @@ -23,32 +40,58 @@ class UnifiedTicketingCommentInputTypedDict(TypedDict): r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" user_id: NotRequired[Nullable[str]] r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" - attachments: NotRequired[Nullable[List[UnifiedTicketingCommentInputAttachmentsTypedDict]]] + attachments: NotRequired[ + Nullable[List[UnifiedTicketingCommentInputAttachmentsTypedDict]] + ] r"""The attachements UUIDs tied to the comment""" - + class UnifiedTicketingCommentInput(BaseModel): body: Nullable[str] r"""The body of the comment""" + html_body: OptionalNullable[str] = UNSET r"""The html body of the comment""" + is_private: OptionalNullable[bool] = UNSET r"""The public status of the comment""" + creator_type: OptionalNullable[str] = UNSET r"""The creator type of the comment. Authorized values are either USER or CONTACT""" + ticket_id: OptionalNullable[str] = UNSET r"""The UUID of the ticket the comment is tied to""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" + attachments: OptionalNullable[List[UnifiedTicketingCommentInputAttachments]] = UNSET r"""The attachements UUIDs tied to the comment""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments"] - nullable_fields = ["body", "html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments"] + optional_fields = [ + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + ] + nullable_fields = [ + "body", + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + ] null_default_fields = [] serialized = handler(self) @@ -58,27 +101,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - - -UnifiedTicketingCommentInputAttachmentsTypedDict = Union[UnifiedTicketingAttachmentOutputTypedDict, str] - - -UnifiedTicketingCommentInputAttachments = Union[UnifiedTicketingAttachmentOutput, str] - diff --git a/src/panora_sdk/models/unifiedticketingcommentoutput.py b/src/panora_sdk/models/unifiedticketingcommentoutput.py index 077690f..35dada0 100644 --- a/src/panora_sdk/models/unifiedticketingcommentoutput.py +++ b/src/panora_sdk/models/unifiedticketingcommentoutput.py @@ -1,12 +1,29 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingattachmentoutput import UnifiedTicketingAttachmentOutput, UnifiedTicketingAttachmentOutputTypedDict +from .unifiedticketingattachmentoutput import ( + UnifiedTicketingAttachmentOutput, + UnifiedTicketingAttachmentOutputTypedDict, +) from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict, Union -from typing_extensions import NotRequired +from typing import Any, Dict, List, Union +from typing_extensions import NotRequired, TypedDict + + +UnifiedTicketingCommentOutputAttachmentsTypedDict = Union[ + UnifiedTicketingAttachmentOutputTypedDict, str +] + + +UnifiedTicketingCommentOutputAttachments = Union[UnifiedTicketingAttachmentOutput, str] class UnifiedTicketingCommentOutputTypedDict(TypedDict): @@ -24,7 +41,9 @@ class UnifiedTicketingCommentOutputTypedDict(TypedDict): r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" user_id: NotRequired[Nullable[str]] r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" - attachments: NotRequired[Nullable[List[UnifiedTicketingCommentOutputAttachmentsTypedDict]]] + attachments: NotRequired[ + Nullable[List[UnifiedTicketingCommentOutputAttachmentsTypedDict]] + ] r"""The attachements UUIDs tied to the comment""" id: NotRequired[Nullable[str]] r"""The UUID of the comment""" @@ -36,40 +55,81 @@ class UnifiedTicketingCommentOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedTicketingCommentOutput(BaseModel): body: Nullable[str] r"""The body of the comment""" + html_body: OptionalNullable[str] = UNSET r"""The html body of the comment""" + is_private: OptionalNullable[bool] = UNSET r"""The public status of the comment""" + creator_type: OptionalNullable[str] = UNSET r"""The creator type of the comment. Authorized values are either USER or CONTACT""" + ticket_id: OptionalNullable[str] = UNSET r"""The UUID of the ticket the comment is tied to""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" - attachments: OptionalNullable[List[UnifiedTicketingCommentOutputAttachments]] = UNSET + + attachments: OptionalNullable[List[UnifiedTicketingCommentOutputAttachments]] = ( + UNSET + ) r"""The attachements UUIDs tied to the comment""" + id: OptionalNullable[str] = UNSET r"""The UUID of the comment""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the comment in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the comment in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["body", "html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "body", + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -79,27 +139,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - - -UnifiedTicketingCommentOutputAttachmentsTypedDict = Union[UnifiedTicketingAttachmentOutputTypedDict, str] - - -UnifiedTicketingCommentOutputAttachments = Union[UnifiedTicketingAttachmentOutput, str] - diff --git a/src/panora_sdk/models/unifiedticketingcontactoutput.py b/src/panora_sdk/models/unifiedticketingcontactoutput.py index 170c4d2..f7d7793 100644 --- a/src/panora_sdk/models/unifiedticketingcontactoutput.py +++ b/src/panora_sdk/models/unifiedticketingcontactoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, Optional, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, Optional +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingContactOutputTypedDict(TypedDict): @@ -29,34 +35,62 @@ class UnifiedTicketingContactOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedTicketingContactOutput(BaseModel): name: Nullable[str] r"""The name of the contact""" + email_address: Nullable[str] r"""The email address of the contact""" + phone_number: OptionalNullable[str] = UNSET r"""The phone number of the contact""" + details: OptionalNullable[str] = UNSET r"""The details of the contact""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the contact between the remote 3rd party & Panora""" + id: Optional[str] = None r"""The UUID of the contact""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the contact in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the contact in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["phone_number", "details", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "email_address", "phone_number", "details", "field_mappings", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "phone_number", + "details", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "email_address", + "phone_number", + "details", + "field_mappings", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -66,21 +100,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedticketingtagoutput.py b/src/panora_sdk/models/unifiedticketingtagoutput.py index c1e929a..aeb3142 100644 --- a/src/panora_sdk/models/unifiedticketingtagoutput.py +++ b/src/panora_sdk/models/unifiedticketingtagoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingTagOutputTypedDict(TypedDict): @@ -23,28 +29,49 @@ class UnifiedTicketingTagOutputTypedDict(TypedDict): r"""The created date of the tag""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the tag""" - + class UnifiedTicketingTagOutput(BaseModel): name: Nullable[str] r"""The name of the tag""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the tag between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the tag""" + remote_id: OptionalNullable[str] = UNSET r"""The remote ID of the tag in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the tag in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the tag""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the tag""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -54,21 +81,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedticketingteamoutput.py b/src/panora_sdk/models/unifiedticketingteamoutput.py index b99a7bc..780cb15 100644 --- a/src/panora_sdk/models/unifiedticketingteamoutput.py +++ b/src/panora_sdk/models/unifiedticketingteamoutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingTeamOutputTypedDict(TypedDict): @@ -25,30 +31,54 @@ class UnifiedTicketingTeamOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedTicketingTeamOutput(BaseModel): name: Nullable[str] r"""The name of the team""" + description: OptionalNullable[str] = UNSET r"""The description of the team""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the team between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the team""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the team in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the team in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["description", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "description", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "description", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "description", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -58,21 +88,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/unifiedticketingticketinput.py b/src/panora_sdk/models/unifiedticketingticketinput.py index dc69566..dc35bb4 100644 --- a/src/panora_sdk/models/unifiedticketingticketinput.py +++ b/src/panora_sdk/models/unifiedticketingticketinput.py @@ -1,20 +1,64 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingattachmentinput import UnifiedTicketingAttachmentInput, UnifiedTicketingAttachmentInputTypedDict -from .unifiedticketingattachmentoutput import UnifiedTicketingAttachmentOutput, UnifiedTicketingAttachmentOutputTypedDict -from .unifiedticketingcollectionoutput import UnifiedTicketingCollectionOutput, UnifiedTicketingCollectionOutputTypedDict -from .unifiedticketingtagoutput import UnifiedTicketingTagOutput, UnifiedTicketingTagOutputTypedDict +from .unifiedticketingattachmentinput import ( + UnifiedTicketingAttachmentInput, + UnifiedTicketingAttachmentInputTypedDict, +) +from .unifiedticketingattachmentoutput import ( + UnifiedTicketingAttachmentOutput, + UnifiedTicketingAttachmentOutputTypedDict, +) +from .unifiedticketingcollectionoutput import ( + UnifiedTicketingCollectionOutput, + UnifiedTicketingCollectionOutputTypedDict, +) +from .unifiedticketingtagoutput import ( + UnifiedTicketingTagOutput, + UnifiedTicketingTagOutputTypedDict, +) from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict, Union -from typing_extensions import NotRequired +from typing import Any, Dict, List, Union +from typing_extensions import NotRequired, TypedDict + + +UnifiedTicketingTicketInputCollectionsTypedDict = Union[ + UnifiedTicketingCollectionOutputTypedDict, str +] + + +UnifiedTicketingTicketInputCollections = Union[UnifiedTicketingCollectionOutput, str] + + +UnifiedTicketingTicketInputTagsTypedDict = Union[ + UnifiedTicketingTagOutputTypedDict, str +] + + +UnifiedTicketingTicketInputTags = Union[UnifiedTicketingTagOutput, str] + + +UnifiedTicketingTicketInputCommentAttachmentsTypedDict = Union[ + UnifiedTicketingAttachmentOutputTypedDict, str +] + + +UnifiedTicketingTicketInputCommentAttachments = Union[ + UnifiedTicketingAttachmentOutput, str +] class UnifiedTicketingTicketInputCommentTypedDict(TypedDict): r"""The comment of the ticket""" - + body: Nullable[str] r"""The body of the comment""" html_body: NotRequired[Nullable[str]] @@ -29,34 +73,62 @@ class UnifiedTicketingTicketInputCommentTypedDict(TypedDict): r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" user_id: NotRequired[Nullable[str]] r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" - attachments: NotRequired[Nullable[List[UnifiedTicketingTicketInputCommentAttachmentsTypedDict]]] + attachments: NotRequired[ + Nullable[List[UnifiedTicketingTicketInputCommentAttachmentsTypedDict]] + ] r"""The attachements UUIDs tied to the comment""" - + class UnifiedTicketingTicketInputComment(BaseModel): r"""The comment of the ticket""" - + body: Nullable[str] r"""The body of the comment""" + html_body: OptionalNullable[str] = UNSET r"""The html body of the comment""" + is_private: OptionalNullable[bool] = UNSET r"""The public status of the comment""" + creator_type: OptionalNullable[str] = UNSET r"""The creator type of the comment. Authorized values are either USER or CONTACT""" + ticket_id: OptionalNullable[str] = UNSET r"""The UUID of the ticket the comment is tied to""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" - attachments: OptionalNullable[List[UnifiedTicketingTicketInputCommentAttachments]] = UNSET + + attachments: OptionalNullable[ + List[UnifiedTicketingTicketInputCommentAttachments] + ] = UNSET r"""The attachements UUIDs tied to the comment""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments"] - nullable_fields = ["body", "html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments"] + optional_fields = [ + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + ] + nullable_fields = [ + "body", + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + ] null_default_fields = [] serialized = handler(self) @@ -66,24 +138,31 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + + +UnifiedTicketingTicketInputAttachmentsTypedDict = Union[ + UnifiedTicketingAttachmentInputTypedDict, str +] + + +UnifiedTicketingTicketInputAttachments = Union[UnifiedTicketingAttachmentInput, str] + class UnifiedTicketingTicketInputTypedDict(TypedDict): name: Nullable[str] @@ -98,7 +177,9 @@ class UnifiedTicketingTicketInputTypedDict(TypedDict): r"""The type of the ticket. Authorized values are PROBLEM, QUESTION, or TASK""" parent_ticket: NotRequired[Nullable[str]] r"""The UUID of the parent ticket""" - collections: NotRequired[Nullable[List[UnifiedTicketingTicketInputCollectionsTypedDict]]] + collections: NotRequired[ + Nullable[List[UnifiedTicketingTicketInputCollectionsTypedDict]] + ] r"""The collection UUIDs the ticket belongs to""" tags: NotRequired[Nullable[List[UnifiedTicketingTicketInputTagsTypedDict]]] r"""The tags names of the ticket""" @@ -114,50 +195,99 @@ class UnifiedTicketingTicketInputTypedDict(TypedDict): r"""The UUID of the account which the ticket belongs to""" contact_id: NotRequired[Nullable[str]] r"""The UUID of the contact which the ticket belongs to""" - attachments: NotRequired[Nullable[List[UnifiedTicketingTicketInputAttachmentsTypedDict]]] + attachments: NotRequired[ + Nullable[List[UnifiedTicketingTicketInputAttachmentsTypedDict]] + ] r"""The attachements UUIDs tied to the ticket""" field_mappings: NotRequired[Nullable[Dict[str, Any]]] r"""The custom field mappings of the ticket between the remote 3rd party & Panora""" - + class UnifiedTicketingTicketInput(BaseModel): name: Nullable[str] r"""The name of the ticket""" + description: Nullable[str] r"""The description of the ticket""" + status: OptionalNullable[str] = UNSET r"""The status of the ticket. Authorized values are OPEN or CLOSED.""" + due_date: OptionalNullable[datetime] = UNSET r"""The date the ticket is due""" + type: OptionalNullable[str] = UNSET r"""The type of the ticket. Authorized values are PROBLEM, QUESTION, or TASK""" + parent_ticket: OptionalNullable[str] = UNSET r"""The UUID of the parent ticket""" + collections: OptionalNullable[List[UnifiedTicketingTicketInputCollections]] = UNSET r"""The collection UUIDs the ticket belongs to""" + tags: OptionalNullable[List[UnifiedTicketingTicketInputTags]] = UNSET r"""The tags names of the ticket""" + completed_at: OptionalNullable[datetime] = UNSET r"""The date the ticket has been completed""" + priority: OptionalNullable[str] = UNSET r"""The priority of the ticket. Authorized values are HIGH, MEDIUM or LOW.""" + assigned_to: OptionalNullable[List[str]] = UNSET r"""The users UUIDs the ticket is assigned to""" + comment: OptionalNullable[UnifiedTicketingTicketInputComment] = UNSET r"""The comment of the ticket""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the account which the ticket belongs to""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact which the ticket belongs to""" + attachments: OptionalNullable[List[UnifiedTicketingTicketInputAttachments]] = UNSET r"""The attachements UUIDs tied to the ticket""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the ticket between the remote 3rd party & Panora""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["status", "due_date", "type", "parent_ticket", "collections", "tags", "completed_at", "priority", "assigned_to", "comment", "account_id", "contact_id", "attachments", "field_mappings"] - nullable_fields = ["name", "description", "status", "due_date", "type", "parent_ticket", "collections", "tags", "completed_at", "priority", "assigned_to", "comment", "account_id", "contact_id", "attachments", "field_mappings"] + optional_fields = [ + "status", + "due_date", + "type", + "parent_ticket", + "collections", + "tags", + "completed_at", + "priority", + "assigned_to", + "comment", + "account_id", + "contact_id", + "attachments", + "field_mappings", + ] + nullable_fields = [ + "name", + "description", + "status", + "due_date", + "type", + "parent_ticket", + "collections", + "tags", + "completed_at", + "priority", + "assigned_to", + "comment", + "account_id", + "contact_id", + "attachments", + "field_mappings", + ] null_default_fields = [] serialized = handler(self) @@ -167,45 +297,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - - -UnifiedTicketingTicketInputCollectionsTypedDict = Union[UnifiedTicketingCollectionOutputTypedDict, str] - - -UnifiedTicketingTicketInputCollections = Union[UnifiedTicketingCollectionOutput, str] - - -UnifiedTicketingTicketInputTagsTypedDict = Union[UnifiedTicketingTagOutputTypedDict, str] - - -UnifiedTicketingTicketInputTags = Union[UnifiedTicketingTagOutput, str] - - -UnifiedTicketingTicketInputCommentAttachmentsTypedDict = Union[UnifiedTicketingAttachmentOutputTypedDict, str] - - -UnifiedTicketingTicketInputCommentAttachments = Union[UnifiedTicketingAttachmentOutput, str] - - -UnifiedTicketingTicketInputAttachmentsTypedDict = Union[UnifiedTicketingAttachmentInputTypedDict, str] - - -UnifiedTicketingTicketInputAttachments = Union[UnifiedTicketingAttachmentInput, str] - diff --git a/src/panora_sdk/models/unifiedticketingticketoutput.py b/src/panora_sdk/models/unifiedticketingticketoutput.py index 4ea05df..b05aa58 100644 --- a/src/panora_sdk/models/unifiedticketingticketoutput.py +++ b/src/panora_sdk/models/unifiedticketingticketoutput.py @@ -1,20 +1,58 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .unifiedticketingattachmentinput import UnifiedTicketingAttachmentInput, UnifiedTicketingAttachmentInputTypedDict -from .unifiedticketingattachmentoutput import UnifiedTicketingAttachmentOutput, UnifiedTicketingAttachmentOutputTypedDict -from .unifiedticketingcollectionoutput import UnifiedTicketingCollectionOutput, UnifiedTicketingCollectionOutputTypedDict -from .unifiedticketingtagoutput import UnifiedTicketingTagOutput, UnifiedTicketingTagOutputTypedDict +from .unifiedticketingattachmentinput import ( + UnifiedTicketingAttachmentInput, + UnifiedTicketingAttachmentInputTypedDict, +) +from .unifiedticketingattachmentoutput import ( + UnifiedTicketingAttachmentOutput, + UnifiedTicketingAttachmentOutputTypedDict, +) +from .unifiedticketingcollectionoutput import ( + UnifiedTicketingCollectionOutput, + UnifiedTicketingCollectionOutputTypedDict, +) +from .unifiedticketingtagoutput import ( + UnifiedTicketingTagOutput, + UnifiedTicketingTagOutputTypedDict, +) from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict, Union -from typing_extensions import NotRequired +from typing import Any, Dict, List, Union +from typing_extensions import NotRequired, TypedDict + + +CollectionsModelTypedDict = Union[UnifiedTicketingCollectionOutputTypedDict, str] + + +CollectionsModel = Union[UnifiedTicketingCollectionOutput, str] + + +TagsModelTypedDict = Union[UnifiedTicketingTagOutputTypedDict, str] + + +TagsModel = Union[UnifiedTicketingTagOutput, str] + + +UnifiedTicketingTicketOutputAttachmentsTypedDict = Union[ + UnifiedTicketingAttachmentOutputTypedDict, str +] + + +UnifiedTicketingTicketOutputAttachments = Union[UnifiedTicketingAttachmentOutput, str] class CommentTypedDict(TypedDict): r"""The comment of the ticket""" - + body: Nullable[str] r"""The body of the comment""" html_body: NotRequired[Nullable[str]] @@ -29,34 +67,60 @@ class CommentTypedDict(TypedDict): r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" user_id: NotRequired[Nullable[str]] r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" - attachments: NotRequired[Nullable[List[UnifiedTicketingTicketOutputAttachmentsTypedDict]]] + attachments: NotRequired[ + Nullable[List[UnifiedTicketingTicketOutputAttachmentsTypedDict]] + ] r"""The attachements UUIDs tied to the comment""" - + class Comment(BaseModel): r"""The comment of the ticket""" - + body: Nullable[str] r"""The body of the comment""" + html_body: OptionalNullable[str] = UNSET r"""The html body of the comment""" + is_private: OptionalNullable[bool] = UNSET r"""The public status of the comment""" + creator_type: OptionalNullable[str] = UNSET r"""The creator type of the comment. Authorized values are either USER or CONTACT""" + ticket_id: OptionalNullable[str] = UNSET r"""The UUID of the ticket the comment is tied to""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact which the comment belongs to (if no user_id specified)""" + user_id: OptionalNullable[str] = UNSET r"""The UUID of the user which the comment belongs to (if no contact_id specified)""" + attachments: OptionalNullable[List[UnifiedTicketingTicketOutputAttachments]] = UNSET r"""The attachements UUIDs tied to the comment""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments"] - nullable_fields = ["body", "html_body", "is_private", "creator_type", "ticket_id", "contact_id", "user_id", "attachments"] + optional_fields = [ + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + ] + nullable_fields = [ + "body", + "html_body", + "is_private", + "creator_type", + "ticket_id", + "contact_id", + "user_id", + "attachments", + ] null_default_fields = [] serialized = handler(self) @@ -66,24 +130,29 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - + + +AttachmentsModelTypedDict = Union[UnifiedTicketingAttachmentInputTypedDict, str] + + +AttachmentsModel = Union[UnifiedTicketingAttachmentInput, str] + class UnifiedTicketingTicketOutputTypedDict(TypedDict): name: Nullable[str] @@ -128,56 +197,118 @@ class UnifiedTicketingTicketOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedTicketingTicketOutput(BaseModel): name: Nullable[str] r"""The name of the ticket""" + description: Nullable[str] r"""The description of the ticket""" + status: OptionalNullable[str] = UNSET r"""The status of the ticket. Authorized values are OPEN or CLOSED.""" + due_date: OptionalNullable[datetime] = UNSET r"""The date the ticket is due""" + type: OptionalNullable[str] = UNSET r"""The type of the ticket. Authorized values are PROBLEM, QUESTION, or TASK""" + parent_ticket: OptionalNullable[str] = UNSET r"""The UUID of the parent ticket""" + collections: OptionalNullable[List[CollectionsModel]] = UNSET r"""The collection UUIDs the ticket belongs to""" + tags: OptionalNullable[List[TagsModel]] = UNSET r"""The tags names of the ticket""" + completed_at: OptionalNullable[datetime] = UNSET r"""The date the ticket has been completed""" + priority: OptionalNullable[str] = UNSET r"""The priority of the ticket. Authorized values are HIGH, MEDIUM or LOW.""" + assigned_to: OptionalNullable[List[str]] = UNSET r"""The users UUIDs the ticket is assigned to""" + comment: OptionalNullable[Comment] = UNSET r"""The comment of the ticket""" + account_id: OptionalNullable[str] = UNSET r"""The UUID of the account which the ticket belongs to""" + contact_id: OptionalNullable[str] = UNSET r"""The UUID of the contact which the ticket belongs to""" + attachments: OptionalNullable[List[AttachmentsModel]] = UNSET r"""The attachements UUIDs tied to the ticket""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the ticket between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the ticket""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the ticket in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the ticket in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["status", "due_date", "type", "parent_ticket", "collections", "tags", "completed_at", "priority", "assigned_to", "comment", "account_id", "contact_id", "attachments", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "description", "status", "due_date", "type", "parent_ticket", "collections", "tags", "completed_at", "priority", "assigned_to", "comment", "account_id", "contact_id", "attachments", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "status", + "due_date", + "type", + "parent_ticket", + "collections", + "tags", + "completed_at", + "priority", + "assigned_to", + "comment", + "account_id", + "contact_id", + "attachments", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "description", + "status", + "due_date", + "type", + "parent_ticket", + "collections", + "tags", + "completed_at", + "priority", + "assigned_to", + "comment", + "account_id", + "contact_id", + "attachments", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -187,45 +318,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - - -CollectionsModelTypedDict = Union[UnifiedTicketingCollectionOutputTypedDict, str] - - -CollectionsModel = Union[UnifiedTicketingCollectionOutput, str] - - -TagsModelTypedDict = Union[UnifiedTicketingTagOutputTypedDict, str] - - -TagsModel = Union[UnifiedTicketingTagOutput, str] - - -UnifiedTicketingTicketOutputAttachmentsTypedDict = Union[UnifiedTicketingAttachmentOutputTypedDict, str] - - -UnifiedTicketingTicketOutputAttachments = Union[UnifiedTicketingAttachmentOutput, str] - - -AttachmentsModelTypedDict = Union[UnifiedTicketingAttachmentInputTypedDict, str] - - -AttachmentsModel = Union[UnifiedTicketingAttachmentInput, str] - diff --git a/src/panora_sdk/models/unifiedticketinguseroutput.py b/src/panora_sdk/models/unifiedticketinguseroutput.py index 120c45e..02ae1d7 100644 --- a/src/panora_sdk/models/unifiedticketinguseroutput.py +++ b/src/panora_sdk/models/unifiedticketinguseroutput.py @@ -2,10 +2,16 @@ from __future__ import annotations from datetime import datetime -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer -from typing import Any, Dict, List, TypedDict -from typing_extensions import NotRequired +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict class UnifiedTicketingUserOutputTypedDict(TypedDict): @@ -29,34 +35,63 @@ class UnifiedTicketingUserOutputTypedDict(TypedDict): r"""The created date of the object""" modified_at: NotRequired[Nullable[datetime]] r"""The modified date of the object""" - + class UnifiedTicketingUserOutput(BaseModel): name: Nullable[str] r"""The name of the user""" + email_address: Nullable[str] r"""The email address of the user""" + teams: OptionalNullable[List[str]] = UNSET r"""The teams whose the user is part of""" + account_id: OptionalNullable[str] = UNSET r"""The account or organization the user is part of""" + field_mappings: OptionalNullable[Dict[str, Any]] = UNSET r"""The custom field mappings of the user between the remote 3rd party & Panora""" + id: OptionalNullable[str] = UNSET r"""The UUID of the user""" + remote_id: OptionalNullable[str] = UNSET r"""The id of the user in the context of the 3rd Party""" + remote_data: OptionalNullable[Dict[str, Any]] = UNSET r"""The remote data of the user in the context of the 3rd Party""" + created_at: OptionalNullable[datetime] = UNSET r"""The created date of the object""" + modified_at: OptionalNullable[datetime] = UNSET r"""The modified date of the object""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["teams", "account_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] - nullable_fields = ["name", "email_address", "teams", "account_id", "field_mappings", "id", "remote_id", "remote_data", "created_at", "modified_at"] + optional_fields = [ + "teams", + "account_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] + nullable_fields = [ + "name", + "email_address", + "teams", + "account_id", + "field_mappings", + "id", + "remote_id", + "remote_data", + "created_at", + "modified_at", + ] null_default_fields = [] serialized = handler(self) @@ -66,21 +101,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/updatepullfrequencydto.py b/src/panora_sdk/models/updatepullfrequencydto.py index 2de114b..a936e9a 100644 --- a/src/panora_sdk/models/updatepullfrequencydto.py +++ b/src/panora_sdk/models/updatepullfrequencydto.py @@ -2,16 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class UpdatePullFrequencyDtoTypedDict(TypedDict): crm: float r"""Frequency in seconds""" - ats: float - r"""Frequency in seconds""" - hris: float - r"""Frequency in seconds""" accounting: float r"""Frequency in seconds""" filestorage: float @@ -20,21 +16,20 @@ class UpdatePullFrequencyDtoTypedDict(TypedDict): r"""Frequency in seconds""" ticketing: float r"""Frequency in seconds""" - + class UpdatePullFrequencyDto(BaseModel): crm: float r"""Frequency in seconds""" - ats: float - r"""Frequency in seconds""" - hris: float - r"""Frequency in seconds""" + accounting: float r"""Frequency in seconds""" + filestorage: float r"""Frequency in seconds""" + ecommerce: float r"""Frequency in seconds""" + ticketing: float r"""Frequency in seconds""" - diff --git a/src/panora_sdk/models/updatepullfrequencyop.py b/src/panora_sdk/models/updatepullfrequencyop.py deleted file mode 100644 index 7f6dc5a..0000000 --- a/src/panora_sdk/models/updatepullfrequencyop.py +++ /dev/null @@ -1,14 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel -from typing import TypedDict - - -class UpdatePullFrequencyResponseBodyTypedDict(TypedDict): - pass - - -class UpdatePullFrequencyResponseBody(BaseModel): - pass - diff --git a/src/panora_sdk/models/updatestatusop.py b/src/panora_sdk/models/updatestatusop.py index be05b01..3ff9774 100644 --- a/src/panora_sdk/models/updatestatusop.py +++ b/src/panora_sdk/models/updatestatusop.py @@ -3,16 +3,16 @@ from __future__ import annotations from panora_sdk.types import BaseModel from panora_sdk.utils import FieldMetadata, PathParamMetadata -from typing import TypedDict -from typing_extensions import Annotated +from typing_extensions import Annotated, TypedDict class UpdateStatusRequestTypedDict(TypedDict): id: str r"""id of the webhook to update.""" - + class UpdateStatusRequest(BaseModel): - id: Annotated[str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))] + id: Annotated[ + str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False)) + ] r"""id of the webhook to update.""" - diff --git a/src/panora_sdk/models/url.py b/src/panora_sdk/models/url.py deleted file mode 100644 index aaf0da7..0000000 --- a/src/panora_sdk/models/url.py +++ /dev/null @@ -1,52 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL -from pydantic import model_serializer -from typing import TypedDict - - -class URLTypedDict(TypedDict): - url: Nullable[str] - r"""The url.""" - url_type: Nullable[str] - r"""The url type. It takes [WEBSITE | BLOG | LINKEDIN | GITHUB | OTHER]""" - - -class URL(BaseModel): - url: Nullable[str] - r"""The url.""" - url_type: Nullable[str] - r"""The url type. It takes [WEBSITE | BLOG | LINKEDIN | GITHUB | OTHER]""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = [] - nullable_fields = ["url", "url_type"] - null_default_fields = [] - - serialized = handler(self) - - m = {} - - for n, f in self.model_fields.items(): - k = f.alias or n - val = serialized.get(k) - - if val is not None and val != UNSET_SENTINEL: - m[k] = val - elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) - ): - m[k] = val - - return m - diff --git a/src/panora_sdk/models/variant.py b/src/panora_sdk/models/variant.py index 2508df6..51ca63f 100644 --- a/src/panora_sdk/models/variant.py +++ b/src/panora_sdk/models/variant.py @@ -2,13 +2,12 @@ from __future__ import annotations from panora_sdk.types import BaseModel -from typing import TypedDict +from typing_extensions import TypedDict class VariantTypedDict(TypedDict): pass - + class Variant(BaseModel): pass - diff --git a/src/panora_sdk/models/webhookdto.py b/src/panora_sdk/models/webhookdto.py index 7ea5ff7..2dcbcda 100644 --- a/src/panora_sdk/models/webhookdto.py +++ b/src/panora_sdk/models/webhookdto.py @@ -1,33 +1,35 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from panora_sdk.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL +from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import List, TypedDict -from typing_extensions import NotRequired +from typing import List +from typing_extensions import TypedDict class WebhookDtoTypedDict(TypedDict): url: Nullable[str] r"""The endpoint url of the webhook.""" + description: Nullable[str] + r"""The description of the webhook.""" scope: Nullable[List[str]] r"""The events that the webhook listen to.""" - description: NotRequired[Nullable[str]] - r"""The description of the webhook.""" - + class WebhookDto(BaseModel): url: Nullable[str] r"""The endpoint url of the webhook.""" + + description: Nullable[str] + r"""The description of the webhook.""" + scope: Nullable[List[str]] r"""The events that the webhook listen to.""" - description: OptionalNullable[str] = UNSET - r"""The description of the webhook.""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = ["description"] - nullable_fields = ["url", "scope", "description"] + optional_fields = [] + nullable_fields = ["url", "description", "scope"] null_default_fields = [] serialized = handler(self) @@ -37,21 +39,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/models/webhookresponse.py b/src/panora_sdk/models/webhookresponse.py index f4a185b..9865ad6 100644 --- a/src/panora_sdk/models/webhookresponse.py +++ b/src/panora_sdk/models/webhookresponse.py @@ -4,7 +4,8 @@ from datetime import datetime from panora_sdk.types import BaseModel, Nullable, UNSET_SENTINEL from pydantic import model_serializer -from typing import List, TypedDict +from typing import List +from typing_extensions import TypedDict class WebhookResponseTypedDict(TypedDict): @@ -26,32 +27,49 @@ class WebhookResponseTypedDict(TypedDict): r"""The project id tied to the webhook.""" last_update: Nullable[datetime] r"""The last update date of the webhook.""" - + class WebhookResponse(BaseModel): id_webhook_endpoint: Nullable[str] r"""The unique UUID of the webhook.""" + endpoint_description: Nullable[str] r"""The description of the webhook.""" + url: Nullable[str] r"""The endpoint url of the webhook.""" + secret: str r"""The secret of the webhook.""" + active: Nullable[bool] r"""The status of the webhook.""" + created_at: Nullable[datetime] r"""The created date of the webhook.""" + scope: Nullable[List[str]] r"""The events that the webhook listen to.""" + id_project: Nullable[str] r"""The project id tied to the webhook.""" + last_update: Nullable[datetime] r"""The last update date of the webhook.""" - + @model_serializer(mode="wrap") def serialize_model(self, handler): optional_fields = [] - nullable_fields = ["id_webhook_endpoint", "endpoint_description", "url", "active", "created_at", "scope", "id_project", "last_update"] + nullable_fields = [ + "id_webhook_endpoint", + "endpoint_description", + "url", + "active", + "created_at", + "scope", + "id_project", + "last_update", + ] null_default_fields = [] serialized = handler(self) @@ -61,21 +79,19 @@ def serialize_model(self, handler): for n, f in self.model_fields.items(): k = f.alias or n val = serialized.get(k) + serialized.pop(k, None) + + optional_nullable = k in optional_fields and k in nullable_fields + is_set = ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member if val is not None and val != UNSET_SENTINEL: m[k] = val elif val != UNSET_SENTINEL and ( - not k in optional_fields - or ( - k in optional_fields - and k in nullable_fields - and ( - self.__pydantic_fields_set__.intersection({n}) - or k in null_default_fields - ) # pylint: disable=no-member - ) + not k in optional_fields or (optional_nullable and is_set) ): m[k] = val return m - diff --git a/src/panora_sdk/notes.py b/src/panora_sdk/notes.py index 1c92ddd..5a6e1cf 100644 --- a/src/panora_sdk/notes.py +++ b/src/panora_sdk/notes.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Notes(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmNoteResponse: + ) -> Optional[models.ListCrmNoteResponse]: r"""List Notes :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmNoteRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/notes", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmNoteResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmNoteResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmNoteResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmNoteResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmNoteResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmNoteResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmNoteResponse: + ) -> Optional[models.ListCrmNoteResponse]: r"""List Notes :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmNoteRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/notes", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmNoteResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,36 @@ def next_func() -> Optional[models.ListCrmNoteResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmNoteResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmNoteResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmNoteResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmNoteResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_crm_note_input: Union[models.UnifiedCrmNoteInput, models.UnifiedCrmNoteInputTypedDict], + unified_crm_note_input: Union[ + models.UnifiedCrmNoteInput, models.UnifiedCrmNoteInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +242,7 @@ def create( Create Notes in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_note_input: + :param unified_crm_note_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +252,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmNoteRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_note_input=utils.get_pydantic_model(unified_crm_note_input, models.UnifiedCrmNoteInput), + unified_crm_note_input=utils.get_pydantic_model( + unified_crm_note_input, models.UnifiedCrmNoteInput + ), ) - + req = self.build_request( method="POST", path="/crm/notes", @@ -251,45 +276,61 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_note_input, False, False, "json", models.UnifiedCrmNoteInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_note_input, + False, + False, + "json", + models.UnifiedCrmNoteInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createCrmNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmNoteOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmNoteOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_crm_note_input: Union[models.UnifiedCrmNoteInput, models.UnifiedCrmNoteInputTypedDict], + unified_crm_note_input: Union[ + models.UnifiedCrmNoteInput, models.UnifiedCrmNoteInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +341,7 @@ async def create_async( Create Notes in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_note_input: + :param unified_crm_note_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +351,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmNoteRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_note_input=utils.get_pydantic_model(unified_crm_note_input, models.UnifiedCrmNoteInput), + unified_crm_note_input=utils.get_pydantic_model( + unified_crm_note_input, models.UnifiedCrmNoteInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/crm/notes", base_url=base_url, @@ -332,43 +375,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_note_input, False, False, "json", models.UnifiedCrmNoteInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_note_input, + False, + False, + "json", + models.UnifiedCrmNoteInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createCrmNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmNoteOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmNoteOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +448,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmNoteRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/notes/{id}", @@ -415,40 +472,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmNoteOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmNoteOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +536,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmNoteRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/notes/{id}", base_url=base_url, @@ -495,34 +560,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmNote", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmNote", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmNoteOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmNoteOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/offers.py b/src/panora_sdk/offers.py deleted file mode 100644 index 205b4c3..0000000 --- a/src/panora_sdk/offers.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Offers(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsOfferResponse: - r"""List Offers - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsOfferRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/offers", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsOffer", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsOfferResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsOfferResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsOfferResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsOfferResponse: - r"""List Offers - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsOfferRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/offers", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsOffer", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsOfferResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsOfferResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsOfferResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsOfferOutput]: - r"""Retrieve Offers - - Retrieve Offers from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the offer you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsOfferRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/offers/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsOffer", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsOfferOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsOfferOutput]: - r"""Retrieve Offers - - Retrieve Offers from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the offer you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsOfferRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/offers/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsOffer", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsOfferOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/offices.py b/src/panora_sdk/offices.py deleted file mode 100644 index 5db52f2..0000000 --- a/src/panora_sdk/offices.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Offices(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsOfficeResponse: - r"""List Offices - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsOfficeRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/offices", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsOffice", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsOfficeResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsOfficeResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsOfficeResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsOfficeResponse: - r"""List Offices - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsOfficeRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/offices", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsOffice", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsOfficeResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsOfficeResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsOfficeResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsOfficeOutput]: - r"""Retrieve Offices - - Retrieve Offices from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the office you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsOfficeRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/offices/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsOffice", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsOfficeOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsOfficeOutput]: - r"""Retrieve Offices - - Retrieve Offices from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the office you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsOfficeRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/offices/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsOffice", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsOfficeOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/orders.py b/src/panora_sdk/orders.py index 1062be0..6814b6c 100644 --- a/src/panora_sdk/orders.py +++ b/src/panora_sdk/orders.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Orders(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceOrdersResponse: + ) -> Optional[models.ListEcommerceOrdersResponse]: r"""List Orders :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceOrdersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ecommerce/orders", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listEcommerceOrders", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceOrders", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceOrdersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListEcommerceOrdersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceOrdersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceOrdersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceOrdersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListEcommerceOrdersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceOrdersResponse: + ) -> Optional[models.ListEcommerceOrdersResponse]: r"""List Orders :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceOrdersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/orders", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listEcommerceOrders", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceOrders", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceOrdersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListEcommerceOrdersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceOrdersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceOrdersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceOrdersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListEcommerceOrdersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_ecommerce_order_input: Union[models.UnifiedEcommerceOrderInput, models.UnifiedEcommerceOrderInputTypedDict], + unified_ecommerce_order_input: Union[ + models.UnifiedEcommerceOrderInput, + models.UnifiedEcommerceOrderInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Orders in any supported Ecommerce software :param x_connection_token: The connection token - :param unified_ecommerce_order_input: + :param unified_ecommerce_order_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateEcommerceOrderRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ecommerce_order_input=utils.get_pydantic_model(unified_ecommerce_order_input, models.UnifiedEcommerceOrderInput), + unified_ecommerce_order_input=utils.get_pydantic_model( + unified_ecommerce_order_input, models.UnifiedEcommerceOrderInput + ), ) - + req = self.build_request( method="POST", path="/ecommerce/orders", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ecommerce_order_input, False, False, "json", models.UnifiedEcommerceOrderInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ecommerce_order_input, + False, + False, + "json", + models.UnifiedEcommerceOrderInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createEcommerceOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createEcommerceOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceOrderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceOrderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_ecommerce_order_input: Union[models.UnifiedEcommerceOrderInput, models.UnifiedEcommerceOrderInputTypedDict], + unified_ecommerce_order_input: Union[ + models.UnifiedEcommerceOrderInput, + models.UnifiedEcommerceOrderInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Orders in any supported Ecommerce software :param x_connection_token: The connection token - :param unified_ecommerce_order_input: + :param unified_ecommerce_order_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateEcommerceOrderRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ecommerce_order_input=utils.get_pydantic_model(unified_ecommerce_order_input, models.UnifiedEcommerceOrderInput), + unified_ecommerce_order_input=utils.get_pydantic_model( + unified_ecommerce_order_input, models.UnifiedEcommerceOrderInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/ecommerce/orders", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ecommerce_order_input, False, False, "json", models.UnifiedEcommerceOrderInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ecommerce_order_input, + False, + False, + "json", + models.UnifiedEcommerceOrderInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createEcommerceOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createEcommerceOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceOrderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceOrderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceOrderRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ecommerce/orders/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveEcommerceOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceOrderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceOrderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceOrderRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/orders/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveEcommerceOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceOrderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceOrderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_accounting_contacts.py b/src/panora_sdk/panora_accounting_contacts.py index f90754c..82d29db 100644 --- a/src/panora_sdk/panora_accounting_contacts.py +++ b/src/panora_sdk/panora_accounting_contacts.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class PanoraAccountingContacts(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingContactsResponse: + ) -> Optional[models.ListAccountingContactsResponse]: r"""List Contacts :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/contacts", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingContactsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingContactsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingContactsResponse: + ) -> Optional[models.ListAccountingContactsResponse]: r"""List Contacts :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/contacts", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListAccountingContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingContactsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingContactsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_contact_input: Union[models.UnifiedAccountingContactInput, models.UnifiedAccountingContactInputTypedDict], + unified_accounting_contact_input: Union[ + models.UnifiedAccountingContactInput, + models.UnifiedAccountingContactInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create contacts in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_contact_input: + :param unified_accounting_contact_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingContactRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_contact_input=utils.get_pydantic_model(unified_accounting_contact_input, models.UnifiedAccountingContactInput), + unified_accounting_contact_input=utils.get_pydantic_model( + unified_accounting_contact_input, models.UnifiedAccountingContactInput + ), ) - + req = self.build_request( method="POST", path="/accounting/contacts", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_contact_input, False, False, "json", models.UnifiedAccountingContactInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_contact_input, + False, + False, + "json", + models.UnifiedAccountingContactInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_contact_input: Union[models.UnifiedAccountingContactInput, models.UnifiedAccountingContactInputTypedDict], + unified_accounting_contact_input: Union[ + models.UnifiedAccountingContactInput, + models.UnifiedAccountingContactInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create contacts in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_contact_input: + :param unified_accounting_contact_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingContactRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_contact_input=utils.get_pydantic_model(unified_accounting_contact_input, models.UnifiedAccountingContactInput), + unified_accounting_contact_input=utils.get_pydantic_model( + unified_accounting_contact_input, models.UnifiedAccountingContactInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/accounting/contacts", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_contact_input, False, False, "json", models.UnifiedAccountingContactInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_contact_input, + False, + False, + "json", + models.UnifiedAccountingContactInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/contacts/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/contacts/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_accounts.py b/src/panora_sdk/panora_accounts.py index 139a842..aa64400 100644 --- a/src/panora_sdk/panora_accounts.py +++ b/src/panora_sdk/panora_accounts.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class PanoraAccounts(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingAccountsResponse: + ) -> Optional[models.ListAccountingAccountsResponse]: r"""List Accounts :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingAccountsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/accounts", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingAccounts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingAccounts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingAccountsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingAccountsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingAccountsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingAccountsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingAccountsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingAccountsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingAccountsResponse: + ) -> Optional[models.ListAccountingAccountsResponse]: r"""List Accounts :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingAccountsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/accounts", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingAccounts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingAccounts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingAccountsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListAccountingAccountsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingAccountsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingAccountsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingAccountsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingAccountsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_account_input: Union[models.UnifiedAccountingAccountInput, models.UnifiedAccountingAccountInputTypedDict], + unified_accounting_account_input: Union[ + models.UnifiedAccountingAccountInput, + models.UnifiedAccountingAccountInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create accounts in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_account_input: + :param unified_accounting_account_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingAccountRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_account_input=utils.get_pydantic_model(unified_accounting_account_input, models.UnifiedAccountingAccountInput), + unified_accounting_account_input=utils.get_pydantic_model( + unified_accounting_account_input, models.UnifiedAccountingAccountInput + ), ) - + req = self.build_request( method="POST", path="/accounting/accounts", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_account_input, False, False, "json", models.UnifiedAccountingAccountInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_account_input, + False, + False, + "json", + models.UnifiedAccountingAccountInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAccountOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAccountOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_account_input: Union[models.UnifiedAccountingAccountInput, models.UnifiedAccountingAccountInputTypedDict], + unified_accounting_account_input: Union[ + models.UnifiedAccountingAccountInput, + models.UnifiedAccountingAccountInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create accounts in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_account_input: + :param unified_accounting_account_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingAccountRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_account_input=utils.get_pydantic_model(unified_accounting_account_input, models.UnifiedAccountingAccountInput), + unified_accounting_account_input=utils.get_pydantic_model( + unified_accounting_account_input, models.UnifiedAccountingAccountInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/accounting/accounts", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_account_input, False, False, "json", models.UnifiedAccountingAccountInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_account_input, + False, + False, + "json", + models.UnifiedAccountingAccountInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAccountOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAccountOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingAccountRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/accounts/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAccountOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAccountOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingAccountRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/accounts/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingAccount", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingAccount", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAccountOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingAccountOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_ats_users.py b/src/panora_sdk/panora_ats_users.py deleted file mode 100644 index 31b7068..0000000 --- a/src/panora_sdk/panora_ats_users.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class PanoraAtsUsers(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsUsersResponse: - r"""List Users - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsUsersRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/users", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsUsersResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsUsersResponse: - r"""List Users - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsUsersRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/users", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsUsersResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsUserOutput]: - r"""Retrieve Users - - Retrieve Users from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the user you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsUserRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/users/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsUserOutput]: - r"""Retrieve Users - - Retrieve Users from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the user you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsUserRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/users/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/panora_attachments.py b/src/panora_sdk/panora_attachments.py index d7a4348..3863533 100644 --- a/src/panora_sdk/panora_attachments.py +++ b/src/panora_sdk/panora_attachments.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class PanoraAttachments(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingAttachmentsResponse: + ) -> Optional[models.ListTicketingAttachmentsResponse]: r"""List Attachments :param x_connection_token: The connection token @@ -35,20 +34,20 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.ListAccountingAttachmentsRequest( + + request = models.ListTicketingAttachmentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", - path="/accounting/attachments", + path="/ticketing/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -60,29 +59,27 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingAttachments", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingAttachments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - def next_func() -> Optional[models.ListAccountingAttachmentsResponse]: + + def next_func() -> Optional[models.ListTicketingAttachmentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingAttachmentsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingAttachmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingAttachmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingAttachmentsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingAttachmentsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingAttachmentsResponse: + ) -> Optional[models.ListTicketingAttachmentsResponse]: r"""List Attachments :param x_connection_token: The connection token @@ -132,20 +142,20 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.ListAccountingAttachmentsRequest( + + request = models.ListTicketingAttachmentsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", - path="/accounting/attachments", + path="/ticketing/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -157,29 +167,27 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingAttachments", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingAttachments", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - def next_func() -> Optional[models.ListAccountingAttachmentsResponse]: + + def next_func() -> Optional[models.ListTicketingAttachmentsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,33 +202,49 @@ def next_func() -> Optional[models.ListAccountingAttachmentsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingAttachmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingAttachmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingAttachmentsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingAttachmentsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_attachment_input: Union[models.UnifiedAccountingAttachmentInput, models.UnifiedAccountingAttachmentInputTypedDict], + unified_ticketing_attachment_input: Union[ + models.UnifiedTicketingAttachmentInput, + models.UnifiedTicketingAttachmentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAccountingAttachmentOutput]: + ) -> Optional[models.UnifiedTicketingAttachmentOutput]: r"""Create Attachments - Create attachments in any supported Accounting software + Create Attachments in any supported Ticketing software :param x_connection_token: The connection token - :param unified_accounting_attachment_input: - :param remote_data: Set to true to include data from the original Accounting software. + :param unified_ticketing_attachment_input: + :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -229,19 +253,22 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.CreateAccountingAttachmentRequest( + + request = models.CreateTicketingAttachmentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_attachment_input=utils.get_pydantic_model(unified_accounting_attachment_input, models.UnifiedAccountingAttachmentInput), + unified_ticketing_attachment_input=utils.get_pydantic_model( + unified_ticketing_attachment_input, + models.UnifiedTicketingAttachmentInput, + ), ) - + req = self.build_request( method="POST", - path="/accounting/attachments", + path="/ticketing/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -251,57 +278,74 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_attachment_input, False, False, "json", models.UnifiedAccountingAttachmentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ticketing_attachment_input, + False, + False, + "json", + models.UnifiedTicketingAttachmentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createTicketingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_attachment_input: Union[models.UnifiedAccountingAttachmentInput, models.UnifiedAccountingAttachmentInputTypedDict], + unified_ticketing_attachment_input: Union[ + models.UnifiedTicketingAttachmentInput, + models.UnifiedTicketingAttachmentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAccountingAttachmentOutput]: + ) -> Optional[models.UnifiedTicketingAttachmentOutput]: r"""Create Attachments - Create attachments in any supported Accounting software + Create Attachments in any supported Ticketing software :param x_connection_token: The connection token - :param unified_accounting_attachment_input: - :param remote_data: Set to true to include data from the original Accounting software. + :param unified_ticketing_attachment_input: + :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -310,19 +354,22 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.CreateAccountingAttachmentRequest( + + request = models.CreateTicketingAttachmentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_attachment_input=utils.get_pydantic_model(unified_accounting_attachment_input, models.UnifiedAccountingAttachmentInput), + unified_ticketing_attachment_input=utils.get_pydantic_model( + unified_ticketing_attachment_input, + models.UnifiedTicketingAttachmentInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", - path="/accounting/attachments", + path="/ticketing/attachments", base_url=base_url, url_variables=url_variables, request=request, @@ -332,57 +379,71 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_attachment_input, False, False, "json", models.UnifiedAccountingAttachmentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ticketing_attachment_input, + False, + False, + "json", + models.UnifiedTicketingAttachmentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createTicketingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAccountingAttachmentOutput]: + ) -> Optional[models.UnifiedTicketingAttachmentOutput]: r"""Retrieve Attachments - Retrieve attachments from any connected Accounting software + Retrieve Attachments from any connected Ticketing software :param x_connection_token: The connection token - :param id: id of the attachment you want to retrieve. - :param remote_data: Set to true to include data from the original Accounting software. + :param id: id of the attachment you want to retrive. + :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -391,19 +452,19 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.RetrieveAccountingAttachmentRequest( + + request = models.RetrieveTicketingAttachmentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", - path="/accounting/attachments/{id}", + path="/ticketing/attachments/{id}", base_url=base_url, url_variables=url_variables, request=request, @@ -415,54 +476,62 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAccountingAttachmentOutput]: + ) -> Optional[models.UnifiedTicketingAttachmentOutput]: r"""Retrieve Attachments - Retrieve attachments from any connected Accounting software + Retrieve Attachments from any connected Ticketing software :param x_connection_token: The connection token - :param id: id of the attachment you want to retrieve. - :param remote_data: Set to true to include data from the original Accounting software. + :param id: id of the attachment you want to retrive. + :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -471,19 +540,19 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - - request = models.RetrieveAccountingAttachmentRequest( + + request = models.RetrieveTicketingAttachmentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", - path="/accounting/attachments/{id}", + path="/ticketing/attachments/{id}", base_url=base_url, url_variables=url_variables, request=request, @@ -495,34 +564,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingAttachment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingAttachmentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_companies.py b/src/panora_sdk/panora_companies.py deleted file mode 100644 index 5d4815f..0000000 --- a/src/panora_sdk/panora_companies.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class PanoraCompanies(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisCompaniesResponse: - r"""List Companies - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisCompaniesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/companies", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisCompanies", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisCompaniesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisCompaniesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisCompaniesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisCompaniesResponse: - r"""List Companies - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisCompaniesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/companies", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisCompanies", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisCompaniesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisCompaniesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisCompaniesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisCompanyOutput]: - r"""Retrieve Company - - Retrieve a Company from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the company you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisCompanyRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/companies/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisCompanyOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisCompanyOutput]: - r"""Retrieve Company - - Retrieve a Company from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the company you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisCompanyRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/companies/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisCompany", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisCompanyOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/panora_contacts.py b/src/panora_sdk/panora_contacts.py index cc0fb43..6ba94b7 100644 --- a/src/panora_sdk/panora_contacts.py +++ b/src/panora_sdk/panora_contacts.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class PanoraContacts(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmContactsResponse: + ) -> Optional[models.ListCrmContactsResponse]: r"""List CRM Contacts :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/contacts", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmContactsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmContactsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmContactsResponse: + ) -> Optional[models.ListCrmContactsResponse]: r"""List CRM Contacts :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/contacts", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,36 @@ def next_func() -> Optional[models.ListCrmContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmContactsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmContactsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_crm_contact_input: Union[models.UnifiedCrmContactInput, models.UnifiedCrmContactInputTypedDict], + unified_crm_contact_input: Union[ + models.UnifiedCrmContactInput, models.UnifiedCrmContactInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +242,7 @@ def create( Create Contacts in any supported CRM :param x_connection_token: The connection token - :param unified_crm_contact_input: + :param unified_crm_contact_input: :param remote_data: Set to true to include data from the original CRM software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +252,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmContactRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_contact_input=utils.get_pydantic_model(unified_crm_contact_input, models.UnifiedCrmContactInput), + unified_crm_contact_input=utils.get_pydantic_model( + unified_crm_contact_input, models.UnifiedCrmContactInput + ), ) - + req = self.build_request( method="POST", path="/crm/contacts", @@ -251,45 +276,61 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_contact_input, False, False, "json", models.UnifiedCrmContactInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_contact_input, + False, + False, + "json", + models.UnifiedCrmContactInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createCrmContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_crm_contact_input: Union[models.UnifiedCrmContactInput, models.UnifiedCrmContactInputTypedDict], + unified_crm_contact_input: Union[ + models.UnifiedCrmContactInput, models.UnifiedCrmContactInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +341,7 @@ async def create_async( Create Contacts in any supported CRM :param x_connection_token: The connection token - :param unified_crm_contact_input: + :param unified_crm_contact_input: :param remote_data: Set to true to include data from the original CRM software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +351,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmContactRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_contact_input=utils.get_pydantic_model(unified_crm_contact_input, models.UnifiedCrmContactInput), + unified_crm_contact_input=utils.get_pydantic_model( + unified_crm_contact_input, models.UnifiedCrmContactInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/crm/contacts", base_url=base_url, @@ -332,43 +375,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_contact_input, False, False, "json", models.UnifiedCrmContactInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_contact_input, + False, + False, + "json", + models.UnifiedCrmContactInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createCrmContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +448,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/contacts/{id}", @@ -415,40 +472,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +536,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/contacts/{id}", base_url=base_url, @@ -495,34 +560,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_events.py b/src/panora_sdk/panora_events.py index 567e26e..4f20a0b 100644 --- a/src/panora_sdk/panora_events.py +++ b/src/panora_sdk/panora_events.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class PanoraEvents(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingAutomationEventsResponse: + ) -> Optional[models.ListMarketingAutomationEventsResponse]: r"""List Events :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingAutomationEventsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/events", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingAutomationEvents", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingAutomationEvents", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingAutomationEventsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingAutomationEventsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingAutomationEventsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingAutomationEventsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingAutomationEventsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingAutomationEventsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingAutomationEventsResponse: + ) -> Optional[models.ListMarketingAutomationEventsResponse]: r"""List Events :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingAutomationEventsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/events", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingAutomationEvents", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingAutomationEvents", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingAutomationEventsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListMarketingAutomationEventsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingAutomationEventsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingAutomationEventsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingAutomationEventsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingAutomationEventsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationEventRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/events/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationEvent", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationEvent", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationEventOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationEventOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationEventRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/events/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationEvent", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationEvent", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationEventOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationEventOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_filestorage_users.py b/src/panora_sdk/panora_filestorage_users.py index 2dd5109..daa11fb 100644 --- a/src/panora_sdk/panora_filestorage_users.py +++ b/src/panora_sdk/panora_filestorage_users.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class PanoraFilestorageUsers(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageUsersResponse: + ) -> Optional[models.ListFilestorageUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListFilestorageUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/filestorage/users", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listFilestorageUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListFilestorageUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListFilestorageUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageUsersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageUsersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageUsersResponse: + ) -> Optional[models.ListFilestorageUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListFilestorageUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/filestorage/users", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listFilestorageUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listFilestorageUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListFilestorageUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListFilestorageUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListFilestorageUsersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListFilestorageUsersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveFilestorageUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/filestorage/users/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveFilestorageUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveFilestorageUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/filestorage/users/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveFilestorageUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveFilestorageUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedFilestorageUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_groups.py b/src/panora_sdk/panora_groups.py deleted file mode 100644 index c54fae7..0000000 --- a/src/panora_sdk/panora_groups.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class PanoraGroups(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageGroupResponse: - r"""List Groups - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListFilestorageGroupRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/filestorage/groups", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listFilestorageGroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListFilestorageGroupResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageGroupResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageGroupResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListFilestorageGroupResponse: - r"""List Groups - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListFilestorageGroupRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/filestorage/groups", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listFilestorageGroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListFilestorageGroupResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListFilestorageGroupResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListFilestorageGroupResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedFilestorageGroupOutput]: - r"""Retrieve Groups - - Retrieve Groups from any connected Filestorage software - - :param x_connection_token: The connection token - :param id: id of the permission you want to retrieve. - :param remote_data: Set to true to include data from the original File Storage software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveFilestorageGroupRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/filestorage/groups/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveFilestorageGroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageGroupOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedFilestorageGroupOutput]: - r"""Retrieve Groups - - Retrieve Groups from any connected Filestorage software - - :param x_connection_token: The connection token - :param id: id of the permission you want to retrieve. - :param remote_data: Set to true to include data from the original File Storage software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveFilestorageGroupRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/filestorage/groups/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveFilestorageGroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedFilestorageGroupOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/panora_marketingautomation_contacts.py b/src/panora_sdk/panora_marketingautomation_contacts.py index 22f497a..6832f9d 100644 --- a/src/panora_sdk/panora_marketingautomation_contacts.py +++ b/src/panora_sdk/panora_marketingautomation_contacts.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class PanoraMarketingautomationContacts(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingAutomationContactsResponse: + ) -> Optional[models.ListMarketingAutomationContactsResponse]: r"""List Contacts :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingAutomationContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/contacts", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingAutomationContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingAutomationContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingAutomationContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingAutomationContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingAutomationContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingAutomationContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingAutomationContactsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingAutomationContactsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingAutomationContactsResponse: + ) -> Optional[models.ListMarketingAutomationContactsResponse]: r"""List Contacts :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingAutomationContactsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/contacts", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingAutomationContacts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingAutomationContacts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingAutomationContactsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListMarketingAutomationContactsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingAutomationContactsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingAutomationContactsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingAutomationContactsResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingAutomationContactsResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_contact_input: Union[models.UnifiedMarketingautomationContactInput, models.UnifiedMarketingautomationContactInputTypedDict], + unified_marketingautomation_contact_input: Union[ + models.UnifiedMarketingautomationContactInput, + models.UnifiedMarketingautomationContactInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create a contact in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_contact_input: + :param unified_marketingautomation_contact_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingAutomationContactRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_contact_input=utils.get_pydantic_model(unified_marketingautomation_contact_input, models.UnifiedMarketingautomationContactInput), + unified_marketingautomation_contact_input=utils.get_pydantic_model( + unified_marketingautomation_contact_input, + models.UnifiedMarketingautomationContactInput, + ), ) - + req = self.build_request( method="POST", path="/marketingautomation/contacts", @@ -251,45 +280,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_contact_input, False, False, "json", models.UnifiedMarketingautomationContactInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_contact_input, + False, + False, + "json", + models.UnifiedMarketingautomationContactInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createMarketingAutomationContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingAutomationContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_contact_input: Union[models.UnifiedMarketingautomationContactInput, models.UnifiedMarketingautomationContactInputTypedDict], + unified_marketingautomation_contact_input: Union[ + models.UnifiedMarketingautomationContactInput, + models.UnifiedMarketingautomationContactInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +346,7 @@ async def create_async( Create a contact in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_contact_input: + :param unified_marketingautomation_contact_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +356,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingAutomationContactRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_contact_input=utils.get_pydantic_model(unified_marketingautomation_contact_input, models.UnifiedMarketingautomationContactInput), + unified_marketingautomation_contact_input=utils.get_pydantic_model( + unified_marketingautomation_contact_input, + models.UnifiedMarketingautomationContactInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/marketingautomation/contacts", base_url=base_url, @@ -332,43 +381,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_contact_input, False, False, "json", models.UnifiedMarketingautomationContactInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_contact_input, + False, + False, + "json", + models.UnifiedMarketingautomationContactInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createMarketingAutomationContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingAutomationContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +454,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingAutomationContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/contacts/{id}", @@ -415,40 +478,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingAutomationContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingAutomationContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +542,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingAutomationContactRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/contacts/{id}", base_url=base_url, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingAutomationContact", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingAutomationContact", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationContactOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationContactOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_marketingautomation_users.py b/src/panora_sdk/panora_marketingautomation_users.py index 4779f33..53957f2 100644 --- a/src/panora_sdk/panora_marketingautomation_users.py +++ b/src/panora_sdk/panora_marketingautomation_users.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class PanoraMarketingautomationUsers(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingAutomationUsersResponse: + ) -> Optional[models.ListMarketingAutomationUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingAutomationUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/users", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingAutomationUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingAutomationUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingAutomationUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingAutomationUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingAutomationUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingAutomationUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingAutomationUsersResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingAutomationUsersResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingAutomationUsersResponse: + ) -> Optional[models.ListMarketingAutomationUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingAutomationUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/users", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingAutomationUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingAutomationUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingAutomationUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListMarketingAutomationUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingAutomationUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingAutomationUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingAutomationUsersResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingAutomationUsersResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingAutomationUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/users/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingAutomationUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingAutomationUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingAutomationUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/users/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingAutomationUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingAutomationUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/panora_tags.py b/src/panora_sdk/panora_tags.py deleted file mode 100644 index 6843595..0000000 --- a/src/panora_sdk/panora_tags.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class PanoraTags(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsTagsResponse: - r"""List Tags - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsTagsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/tags", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsTags", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsTagsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsTagsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsTagsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsTagsResponse: - r"""List Tags - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsTagsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/tags", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsTags", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsTagsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsTagsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsTagsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsTagOutput]: - r"""Retrieve Tags - - Retrieve Tags from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the tag you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsTagRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/tags/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsTag", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsTagOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsTagOutput]: - r"""Retrieve Tags - - Retrieve Tags from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the tag you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsTagRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/tags/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsTag", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsTagOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/panora_ticketing_attachments.py b/src/panora_sdk/panora_ticketing_attachments.py deleted file mode 100644 index 4cff962..0000000 --- a/src/panora_sdk/panora_ticketing_attachments.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class PanoraTicketingAttachments(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListTicketingAttachmentsResponse: - r"""List Attachments - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListTicketingAttachmentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ticketing/attachments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingAttachments", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListTicketingAttachmentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingAttachmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingAttachmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListTicketingAttachmentsResponse: - r"""List Attachments - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListTicketingAttachmentsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ticketing/attachments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingAttachments", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListTicketingAttachmentsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingAttachmentsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingAttachmentsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_ticketing_attachment_input: Union[models.UnifiedTicketingAttachmentInput, models.UnifiedTicketingAttachmentInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedTicketingAttachmentOutput]: - r"""Create Attachments - - Create Attachments in any supported Ticketing software - - :param x_connection_token: The connection token - :param unified_ticketing_attachment_input: - :param remote_data: Set to true to include data from the original Ticketing software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateTicketingAttachmentRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ticketing_attachment_input=utils.get_pydantic_model(unified_ticketing_attachment_input, models.UnifiedTicketingAttachmentInput), - ) - - req = self.build_request( - method="POST", - path="/ticketing/attachments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ticketing_attachment_input, False, False, "json", models.UnifiedTicketingAttachmentInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createTicketingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_ticketing_attachment_input: Union[models.UnifiedTicketingAttachmentInput, models.UnifiedTicketingAttachmentInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedTicketingAttachmentOutput]: - r"""Create Attachments - - Create Attachments in any supported Ticketing software - - :param x_connection_token: The connection token - :param unified_ticketing_attachment_input: - :param remote_data: Set to true to include data from the original Ticketing software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateTicketingAttachmentRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_ticketing_attachment_input=utils.get_pydantic_model(unified_ticketing_attachment_input, models.UnifiedTicketingAttachmentInput), - ) - - req = self.build_request( - method="POST", - path="/ticketing/attachments", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ticketing_attachment_input, False, False, "json", models.UnifiedTicketingAttachmentInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createTicketingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedTicketingAttachmentOutput]: - r"""Retrieve Attachments - - Retrieve Attachments from any connected Ticketing software - - :param x_connection_token: The connection token - :param id: id of the attachment you want to retrive. - :param remote_data: Set to true to include data from the original Ticketing software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveTicketingAttachmentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ticketing/attachments/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedTicketingAttachmentOutput]: - r"""Retrieve Attachments - - Retrieve Attachments from any connected Ticketing software - - :param x_connection_token: The connection token - :param id: id of the attachment you want to retrive. - :param remote_data: Set to true to include data from the original Ticketing software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveTicketingAttachmentRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ticketing/attachments/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingAttachment", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingAttachmentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/panora_users.py b/src/panora_sdk/panora_users.py index a9ae2e0..57e7e9c 100644 --- a/src/panora_sdk/panora_users.py +++ b/src/panora_sdk/panora_users.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class PanoraUsers(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmUsersResponse: + ) -> Optional[models.ListCrmUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/users", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmUsersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmUsersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmUsersResponse: + ) -> Optional[models.ListCrmUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/users", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListCrmUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmUsersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmUsersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/users/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/users/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/passthrough.py b/src/panora_sdk/passthrough.py index 49389bf..5254f07 100644 --- a/src/panora_sdk/passthrough.py +++ b/src/panora_sdk/passthrough.py @@ -2,36 +2,39 @@ from .basesdk import BaseSDK from .sdkconfiguration import SDKConfiguration -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.retryid_ import Retryid from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Optional, Union + class Passthrough(BaseSDK): retryid: Retryid + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.retryid = Retryid(self.sdk_configuration) - - + def request( - self, *, + self, + *, x_connection_token: str, - pass_through_request_dto: Union[models.PassThroughRequestDto, models.PassThroughRequestDtoTypedDict], + pass_through_request_dto: Union[ + models.PassThroughRequestDto, models.PassThroughRequestDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.RequestResponse]: + ) -> Optional[models.RequestResponseBody]: r"""Make a passthrough request - :param x_connection_token: - :param pass_through_request_dto: + :param x_connection_token: + :param pass_through_request_dto: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -40,15 +43,17 @@ def request( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RequestRequest( x_connection_token=x_connection_token, - pass_through_request_dto=utils.get_pydantic_model(pass_through_request_dto, models.PassThroughRequestDto), + pass_through_request_dto=utils.get_pydantic_model( + pass_through_request_dto, models.PassThroughRequestDto + ), ) - + req = self.build_request( method="POST", path="/passthrough", @@ -61,55 +66,69 @@ def request( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.pass_through_request_dto, False, False, "json", models.PassThroughRequestDto), + get_serialized_body=lambda: utils.serialize_request_body( + request.pass_through_request_dto, + False, + False, + "json", + models.PassThroughRequestDto, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="request", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="request", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RequestResponseBody]) - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RequestPassthroughResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.RequestResponseBody] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def request_async( - self, *, + self, + *, x_connection_token: str, - pass_through_request_dto: Union[models.PassThroughRequestDto, models.PassThroughRequestDtoTypedDict], + pass_through_request_dto: Union[ + models.PassThroughRequestDto, models.PassThroughRequestDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.RequestResponse]: + ) -> Optional[models.RequestResponseBody]: r"""Make a passthrough request - :param x_connection_token: - :param pass_through_request_dto: + :param x_connection_token: + :param pass_through_request_dto: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -118,16 +137,18 @@ async def request_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RequestRequest( x_connection_token=x_connection_token, - pass_through_request_dto=utils.get_pydantic_model(pass_through_request_dto, models.PassThroughRequestDto), + pass_through_request_dto=utils.get_pydantic_model( + pass_through_request_dto, models.PassThroughRequestDto + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/passthrough", base_url=base_url, @@ -139,39 +160,50 @@ async def request_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.pass_through_request_dto, False, False, "json", models.PassThroughRequestDto), + get_serialized_body=lambda: utils.serialize_request_body( + request.pass_through_request_dto, + False, + False, + "json", + models.PassThroughRequestDto, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="request", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="request", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RequestResponseBody]) - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.RequestPassthroughResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.RequestResponseBody] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/paygroups.py b/src/panora_sdk/paygroups.py deleted file mode 100644 index 84bf662..0000000 --- a/src/panora_sdk/paygroups.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Paygroups(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisPaygroupsResponse: - r"""List Pay Groups - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisPaygroupsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/paygroups", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisPaygroups", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisPaygroupsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisPaygroupsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisPaygroupsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisPaygroupsResponse: - r"""List Pay Groups - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisPaygroupsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/paygroups", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisPaygroups", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisPaygroupsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisPaygroupsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisPaygroupsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisPaygroupOutput]: - r"""Retrieve Pay Group - - Retrieve a Pay Group from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the paygroup you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisPaygroupRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/paygroups/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisPaygroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisPaygroupOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisPaygroupOutput]: - r"""Retrieve Pay Group - - Retrieve a Pay Group from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the paygroup you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisPaygroupRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/paygroups/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisPaygroup", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisPaygroupOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/payments.py b/src/panora_sdk/payments.py index 82caff0..ffa28bf 100644 --- a/src/panora_sdk/payments.py +++ b/src/panora_sdk/payments.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Payments(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingPaymentResponse: + ) -> Optional[models.ListAccountingPaymentResponse]: r"""List Payments :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingPaymentRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/payments", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingPayment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingPayment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingPaymentResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingPaymentResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingPaymentResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingPaymentResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingPaymentResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingPaymentResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingPaymentResponse: + ) -> Optional[models.ListAccountingPaymentResponse]: r"""List Payments :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingPaymentRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/payments", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingPayment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingPayment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingPaymentResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListAccountingPaymentResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingPaymentResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingPaymentResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingPaymentResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingPaymentResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_payment_input: Union[models.UnifiedAccountingPaymentInput, models.UnifiedAccountingPaymentInputTypedDict], + unified_accounting_payment_input: Union[ + models.UnifiedAccountingPaymentInput, + models.UnifiedAccountingPaymentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Payments in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_payment_input: + :param unified_accounting_payment_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingPaymentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_payment_input=utils.get_pydantic_model(unified_accounting_payment_input, models.UnifiedAccountingPaymentInput), + unified_accounting_payment_input=utils.get_pydantic_model( + unified_accounting_payment_input, models.UnifiedAccountingPaymentInput + ), ) - + req = self.build_request( method="POST", path="/accounting/payments", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_payment_input, False, False, "json", models.UnifiedAccountingPaymentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_payment_input, + False, + False, + "json", + models.UnifiedAccountingPaymentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingPayment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingPayment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPaymentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPaymentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_payment_input: Union[models.UnifiedAccountingPaymentInput, models.UnifiedAccountingPaymentInputTypedDict], + unified_accounting_payment_input: Union[ + models.UnifiedAccountingPaymentInput, + models.UnifiedAccountingPaymentInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Payments in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_payment_input: + :param unified_accounting_payment_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingPaymentRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_payment_input=utils.get_pydantic_model(unified_accounting_payment_input, models.UnifiedAccountingPaymentInput), + unified_accounting_payment_input=utils.get_pydantic_model( + unified_accounting_payment_input, models.UnifiedAccountingPaymentInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/accounting/payments", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_payment_input, False, False, "json", models.UnifiedAccountingPaymentInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_payment_input, + False, + False, + "json", + models.UnifiedAccountingPaymentInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingPayment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingPayment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPaymentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPaymentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingPaymentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/payments/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingPayment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingPayment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPaymentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPaymentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingPaymentRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/payments/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingPayment", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingPayment", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPaymentOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPaymentOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/payrollruns.py b/src/panora_sdk/payrollruns.py deleted file mode 100644 index 71c643f..0000000 --- a/src/panora_sdk/payrollruns.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Payrollruns(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisPayrollRunsResponse: - r"""List Payroll Runs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisPayrollRunsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/payrollruns", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisPayrollRuns", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisPayrollRunsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisPayrollRunsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisPayrollRunsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisPayrollRunsResponse: - r"""List Payroll Runs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisPayrollRunsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/payrollruns", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisPayrollRuns", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisPayrollRunsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisPayrollRunsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisPayrollRunsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisPayrollrunOutput]: - r"""Retrieve Payroll Run - - Retrieve a Payroll Run from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the payroll run you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisPayrollRunRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/payrollruns/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisPayrollRun", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisPayrollrunOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisPayrollrunOutput]: - r"""Retrieve Payroll Run - - Retrieve a Payroll Run from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the payroll run you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisPayrollRunRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/payrollruns/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisPayrollRun", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisPayrollrunOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/phonenumbers.py b/src/panora_sdk/phonenumbers.py index c527383..e38aa28 100644 --- a/src/panora_sdk/phonenumbers.py +++ b/src/panora_sdk/phonenumbers.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Phonenumbers(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingPhonenumberResponse: + ) -> Optional[models.ListAccountingPhonenumberResponse]: r"""List PhoneNumbers :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingPhonenumberRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/phonenumbers", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingPhonenumber", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingPhonenumber", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingPhonenumberResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingPhonenumberResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingPhonenumberResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingPhonenumberResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingPhonenumberResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingPhonenumberResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingPhonenumberResponse: + ) -> Optional[models.ListAccountingPhonenumberResponse]: r"""List PhoneNumbers :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingPhonenumberRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/phonenumbers", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingPhonenumber", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingPhonenumber", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingPhonenumberResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingPhonenumberResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingPhonenumberResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingPhonenumberResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingPhonenumberResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingPhonenumberResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingPhonenumberRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/phonenumbers/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingPhonenumber", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingPhonenumber", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPhonenumberOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPhonenumberOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingPhonenumberRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/phonenumbers/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingPhonenumber", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingPhonenumber", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPhonenumberOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPhonenumberOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/products.py b/src/panora_sdk/products.py index 53c07a1..a6a8215 100644 --- a/src/panora_sdk/products.py +++ b/src/panora_sdk/products.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Products(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceProductsResponse: + ) -> Optional[models.ListEcommerceProductsResponse]: r"""List Products :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceProductsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ecommerce/products", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listEcommerceProducts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceProducts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceProductsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListEcommerceProductsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceProductsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceProductsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceProductsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListEcommerceProductsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListEcommerceProductsResponse: + ) -> Optional[models.ListEcommerceProductsResponse]: r"""List Products :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListEcommerceProductsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/products", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listEcommerceProducts", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listEcommerceProducts", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListEcommerceProductsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListEcommerceProductsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListEcommerceProductsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListEcommerceProductsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListEcommerceProductsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListEcommerceProductsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_ecommerce_product_input: Union[models.UnifiedEcommerceProductInput, models.UnifiedEcommerceProductInputTypedDict], + unified_ecommerce_product_input: Union[ + models.UnifiedEcommerceProductInput, + models.UnifiedEcommerceProductInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Products in any supported Ecommerce software :param x_connection_token: The connection token - :param unified_ecommerce_product_input: + :param unified_ecommerce_product_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateEcommerceProductRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ecommerce_product_input=utils.get_pydantic_model(unified_ecommerce_product_input, models.UnifiedEcommerceProductInput), + unified_ecommerce_product_input=utils.get_pydantic_model( + unified_ecommerce_product_input, models.UnifiedEcommerceProductInput + ), ) - + req = self.build_request( method="POST", path="/ecommerce/products", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ecommerce_product_input, False, False, "json", models.UnifiedEcommerceProductInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ecommerce_product_input, + False, + False, + "json", + models.UnifiedEcommerceProductInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createEcommerceProduct", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createEcommerceProduct", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceProductOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceProductOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_ecommerce_product_input: Union[models.UnifiedEcommerceProductInput, models.UnifiedEcommerceProductInputTypedDict], + unified_ecommerce_product_input: Union[ + models.UnifiedEcommerceProductInput, + models.UnifiedEcommerceProductInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Products in any supported Ecommerce software :param x_connection_token: The connection token - :param unified_ecommerce_product_input: + :param unified_ecommerce_product_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateEcommerceProductRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ecommerce_product_input=utils.get_pydantic_model(unified_ecommerce_product_input, models.UnifiedEcommerceProductInput), + unified_ecommerce_product_input=utils.get_pydantic_model( + unified_ecommerce_product_input, models.UnifiedEcommerceProductInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/ecommerce/products", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ecommerce_product_input, False, False, "json", models.UnifiedEcommerceProductInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ecommerce_product_input, + False, + False, + "json", + models.UnifiedEcommerceProductInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createEcommerceProduct", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createEcommerceProduct", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceProductOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceProductOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceProductRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ecommerce/products/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveEcommerceProduct", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceProduct", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceProductOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceProductOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveEcommerceProductRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ecommerce/products/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveEcommerceProduct", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveEcommerceProduct", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedEcommerceProductOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedEcommerceProductOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/projects.py b/src/panora_sdk/projects.py index 8af0913..4f3f940 100644 --- a/src/panora_sdk/projects.py +++ b/src/panora_sdk/projects.py @@ -1,17 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import BaseModel, OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import List, Optional, Union, cast + class Projects(BaseSDK): - - def get_projects( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -26,7 +25,7 @@ def get_projects( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -43,40 +42,48 @@ def get_projects( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="getProjects", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getProjects", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.ProjectResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.ProjectResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def get_projects_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -91,10 +98,10 @@ async def get_projects_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/projects", base_url=base_url, @@ -108,40 +115,48 @@ async def get_projects_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="getProjects", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getProjects", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.ProjectResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.ProjectResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, request: Union[models.CreateProjectDto, models.CreateProjectDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -158,14 +173,14 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CreateProjectDto) request = cast(models.CreateProjectDto, request) - + req = self.build_request( method="POST", path="/projects", @@ -178,43 +193,51 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CreateProjectDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateProjectDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createProject", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createProject", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.ProjectResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, request: Union[models.CreateProjectDto, models.CreateProjectDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -231,15 +254,15 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.CreateProjectDto) request = cast(models.CreateProjectDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/projects", base_url=base_url, @@ -251,37 +274,44 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.CreateProjectDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateProjectDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createProject", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createProject", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.ProjectResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/purchaseorders.py b/src/panora_sdk/purchaseorders.py index cb7a149..1f51df2 100644 --- a/src/panora_sdk/purchaseorders.py +++ b/src/panora_sdk/purchaseorders.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Purchaseorders(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingPurchaseOrderResponse: + ) -> Optional[models.ListAccountingPurchaseOrderResponse]: r"""List PurchaseOrders :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingPurchaseOrderRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/purchaseorders", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingPurchaseOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingPurchaseOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingPurchaseOrderResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingPurchaseOrderResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingPurchaseOrderResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingPurchaseOrderResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingPurchaseOrderResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingPurchaseOrderResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingPurchaseOrderResponse: + ) -> Optional[models.ListAccountingPurchaseOrderResponse]: r"""List PurchaseOrders :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingPurchaseOrderRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/purchaseorders", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingPurchaseOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingPurchaseOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingPurchaseOrderResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListAccountingPurchaseOrderResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingPurchaseOrderResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingPurchaseOrderResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingPurchaseOrderResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingPurchaseOrderResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_accounting_purchaseorder_input: Union[models.UnifiedAccountingPurchaseorderInput, models.UnifiedAccountingPurchaseorderInputTypedDict], + unified_accounting_purchaseorder_input: Union[ + models.UnifiedAccountingPurchaseorderInput, + models.UnifiedAccountingPurchaseorderInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create Purchase Orders in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_purchaseorder_input: + :param unified_accounting_purchaseorder_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingPurchaseOrderRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_purchaseorder_input=utils.get_pydantic_model(unified_accounting_purchaseorder_input, models.UnifiedAccountingPurchaseorderInput), + unified_accounting_purchaseorder_input=utils.get_pydantic_model( + unified_accounting_purchaseorder_input, + models.UnifiedAccountingPurchaseorderInput, + ), ) - + req = self.build_request( method="POST", path="/accounting/purchaseorders", @@ -251,45 +280,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_purchaseorder_input, False, False, "json", models.UnifiedAccountingPurchaseorderInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_purchaseorder_input, + False, + False, + "json", + models.UnifiedAccountingPurchaseorderInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createAccountingPurchaseOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingPurchaseOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_accounting_purchaseorder_input: Union[models.UnifiedAccountingPurchaseorderInput, models.UnifiedAccountingPurchaseorderInputTypedDict], + unified_accounting_purchaseorder_input: Union[ + models.UnifiedAccountingPurchaseorderInput, + models.UnifiedAccountingPurchaseorderInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +346,7 @@ async def create_async( Create Purchase Orders in any supported Accounting software :param x_connection_token: The connection token - :param unified_accounting_purchaseorder_input: + :param unified_accounting_purchaseorder_input: :param remote_data: Set to true to include data from the original Accounting software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +356,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateAccountingPurchaseOrderRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_accounting_purchaseorder_input=utils.get_pydantic_model(unified_accounting_purchaseorder_input, models.UnifiedAccountingPurchaseorderInput), + unified_accounting_purchaseorder_input=utils.get_pydantic_model( + unified_accounting_purchaseorder_input, + models.UnifiedAccountingPurchaseorderInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/accounting/purchaseorders", base_url=base_url, @@ -332,43 +381,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_accounting_purchaseorder_input, False, False, "json", models.UnifiedAccountingPurchaseorderInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_accounting_purchaseorder_input, + False, + False, + "json", + models.UnifiedAccountingPurchaseorderInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createAccountingPurchaseOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createAccountingPurchaseOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +454,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingPurchaseOrderRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/purchaseorders/{id}", @@ -415,40 +478,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingPurchaseOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingPurchaseOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +542,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingPurchaseOrderRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/purchaseorders/{id}", base_url=base_url, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingPurchaseOrder", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingPurchaseOrder", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingPurchaseorderOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/query.py b/src/panora_sdk/query.py deleted file mode 100644 index ea4a500..0000000 --- a/src/panora_sdk/query.py +++ /dev/null @@ -1,167 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Optional, Union - -class Query(BaseSDK): - - - def query( - self, *, - x_connection_token: str, - query_body: Union[models.QueryBody, models.QueryBodyTypedDict], - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.QueryResponseBody]: - r"""Query using RAG Search - - Query across your connected data sources using RAG Search - - :param x_connection_token: The connection token - :param query_body: - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.QueryRequest( - x_connection_token=x_connection_token, - query_body=utils.get_pydantic_model(query_body, models.QueryBody), - ) - - req = self.build_request( - method="POST", - path="/rag/query", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.query_body, False, False, "json", models.QueryBody), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="query", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.QueryResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def query_async( - self, *, - x_connection_token: str, - query_body: Union[models.QueryBody, models.QueryBodyTypedDict], - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.QueryResponseBody]: - r"""Query using RAG Search - - Query across your connected data sources using RAG Search - - :param x_connection_token: The connection token - :param query_body: - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.QueryRequest( - x_connection_token=x_connection_token, - query_body=utils.get_pydantic_model(query_body, models.QueryBody), - ) - - req = self.build_request( - method="POST", - path="/rag/query", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.query_body, False, False, "json", models.QueryBody), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="query", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.QueryResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/rag.py b/src/panora_sdk/rag.py index c72687e..f645bfc 100644 --- a/src/panora_sdk/rag.py +++ b/src/panora_sdk/rag.py @@ -1,16 +1,185 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from .sdkconfiguration import SDKConfiguration -from panora_sdk.query import Query +from panora_sdk import models, utils +from panora_sdk._hooks import HookContext +from panora_sdk.types import OptionalNullable, UNSET +from typing import List, Optional, Union + class Rag(BaseSDK): - query: Query - def __init__(self, sdk_config: SDKConfiguration) -> None: - BaseSDK.__init__(self, sdk_config) - self.sdk_configuration = sdk_config - self._init_sdks() - - def _init_sdks(self): - self.query = Query(self.sdk_configuration) - + def query( + self, + *, + x_connection_token: str, + query_body: Union[models.QueryBody, models.QueryBodyTypedDict], + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + ) -> Optional[List[models.RagQueryOutput]]: + r"""Query using RAG Search + + Query across your connected data sources using RAG Search + + :param x_connection_token: The connection token + :param query_body: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if server_url is not None: + base_url = server_url + + request = models.QueryRequest( + x_connection_token=x_connection_token, + query_body=utils.get_pydantic_model(query_body, models.QueryBody), + ) + + req = self.build_request( + method="POST", + path="/rag/query", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=True, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="application/json", + security=self.sdk_configuration.security, + get_serialized_body=lambda: utils.serialize_request_body( + request.query_body, False, False, "json", models.QueryBody + ), + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = self.do_request( + hook_ctx=HookContext( + operation_id="query", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), + request=req, + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, + ) + + if utils.match_response(http_res, "201", "application/json"): + return utils.unmarshal_json( + http_res.text, Optional[List[models.RagQueryOutput]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + + content_type = http_res.headers.get("Content-Type") + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) + + async def query_async( + self, + *, + x_connection_token: str, + query_body: Union[models.QueryBody, models.QueryBodyTypedDict], + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + ) -> Optional[List[models.RagQueryOutput]]: + r"""Query using RAG Search + + Query across your connected data sources using RAG Search + + :param x_connection_token: The connection token + :param query_body: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if server_url is not None: + base_url = server_url + + request = models.QueryRequest( + x_connection_token=x_connection_token, + query_body=utils.get_pydantic_model(query_body, models.QueryBody), + ) + + req = self.build_request_async( + method="POST", + path="/rag/query", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=True, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="application/json", + security=self.sdk_configuration.security, + get_serialized_body=lambda: utils.serialize_request_body( + request.query_body, False, False, "json", models.QueryBody + ), + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = await self.do_request_async( + hook_ctx=HookContext( + operation_id="query", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), + request=req, + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, + ) + + if utils.match_response(http_res, "201", "application/json"): + return utils.unmarshal_json( + http_res.text, Optional[List[models.RagQueryOutput]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/rejectreasons.py b/src/panora_sdk/rejectreasons.py deleted file mode 100644 index ebf66e6..0000000 --- a/src/panora_sdk/rejectreasons.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Rejectreasons(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsRejectReasonsResponse: - r"""List RejectReasons - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsRejectReasonsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/rejectreasons", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsRejectReasons", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsRejectReasonsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsRejectReasonsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsRejectReasonsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsRejectReasonsResponse: - r"""List RejectReasons - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsRejectReasonsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/rejectreasons", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsRejectReasons", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsRejectReasonsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsRejectReasonsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsRejectReasonsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsRejectreasonOutput]: - r"""Retrieve Reject Reasons - - Retrieve Reject Reasons from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the rejectreason you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsRejectReasonRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/rejectreasons/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsRejectReason", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsRejectreasonOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsRejectreasonOutput]: - r"""Retrieve Reject Reasons - - Retrieve Reject Reasons from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the rejectreason you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsRejectReasonRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/rejectreasons/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsRejectReason", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsRejectreasonOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/retryid_.py b/src/panora_sdk/retryid_.py index 3b10afc..9ad425d 100644 --- a/src/panora_sdk/retryid_.py +++ b/src/panora_sdk/retryid_.py @@ -1,17 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Optional + class Retryid(BaseSDK): - - def get_retried_request_response( - self, *, + self, + *, retry_id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -28,14 +27,14 @@ def get_retried_request_response( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.GetRetriedRequestResponseRequest( retry_id=retry_id, ) - + req = self.build_request( method="GET", path="/passthrough/{retryId}", @@ -50,40 +49,46 @@ def get_retried_request_response( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="getRetriedRequestResponse", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getRetriedRequestResponse", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def get_retried_request_response_async( - self, *, + self, + *, retry_id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -100,15 +105,15 @@ async def get_retried_request_response_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.GetRetriedRequestResponseRequest( retry_id=retry_id, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/passthrough/{retryId}", base_url=base_url, @@ -122,34 +127,39 @@ async def get_retried_request_response_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="getRetriedRequestResponse", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getRetriedRequestResponse", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/scorecards.py b/src/panora_sdk/scorecards.py deleted file mode 100644 index 3f2bc82..0000000 --- a/src/panora_sdk/scorecards.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Scorecards(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsScorecardResponse: - r"""List ScoreCards - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsScorecardRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/scorecards", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAtsScorecard", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsScorecardResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsScorecardResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsScorecardResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListAtsScorecardResponse: - r"""List ScoreCards - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListAtsScorecardRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/ats/scorecards", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAtsScorecard", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListAtsScorecardResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListAtsScorecardResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAtsScorecardResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsScorecardOutput]: - r"""Retrieve Score Cards - - Retrieve Score Cards from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the scorecard you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsScorecardRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/scorecards/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAtsScorecard", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsScorecardOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedAtsScorecardOutput]: - r"""Retrieve Score Cards - - Retrieve Score Cards from any connected Ats software - - :param x_connection_token: The connection token - :param id: id of the scorecard you want to retrieve. - :param remote_data: Set to true to include data from the original Ats software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveAtsScorecardRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/ats/scorecards/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAtsScorecard", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAtsScorecardOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/sdk.py b/src/panora_sdk/sdk.py index 1366744..0b8da60 100644 --- a/src/panora_sdk/sdk.py +++ b/src/panora_sdk/sdk.py @@ -3,13 +3,12 @@ from .basesdk import BaseSDK from .httpclient import AsyncHttpClient, HttpClient from .sdkconfiguration import SDKConfiguration -from .utils.logger import Logger, NoOpLogger +from .utils.logger import Logger, get_default_logger from .utils.retries import RetryConfig import httpx -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext, SDKHooks from panora_sdk.accounting import Accounting -from panora_sdk.ats import Ats from panora_sdk.auth import Auth from panora_sdk.connections import Connections from panora_sdk.crm import Crm @@ -17,7 +16,6 @@ from panora_sdk.events import Events from panora_sdk.fieldmappings import FieldMappings from panora_sdk.filestorage import Filestorage -from panora_sdk.hris import Hris from panora_sdk.linkedusers import LinkedUsers from panora_sdk.marketingautomation import Marketingautomation from panora_sdk.passthrough import Passthrough @@ -26,12 +24,13 @@ from panora_sdk.sync import Sync from panora_sdk.ticketing import Ticketing from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from panora_sdk.webhooks import Webhooks from typing import Any, Callable, Dict, Optional, Union + class Panora(BaseSDK): r"""Panora API: A unified API to ship integrations""" + rag: Rag filestorage: Filestorage auth: Auth @@ -45,11 +44,10 @@ class Panora(BaseSDK): field_mappings: FieldMappings events: Events passthrough: Passthrough - hris: Hris marketingautomation: Marketingautomation - ats: Ats accounting: Accounting ecommerce: Ecommerce + def __init__( self, api_key: Union[str, Callable[[], str]], @@ -60,7 +58,7 @@ def __init__( async_client: Optional[AsyncHttpClient] = None, retry_config: OptionalNullable[RetryConfig] = UNSET, timeout_ms: Optional[int] = None, - debug_logger: Optional[Logger] = None + debug_logger: Optional[Logger] = None, ) -> None: r"""Instantiates the SDK configuring it with the provided parameters. @@ -84,38 +82,42 @@ def __init__( async_client = httpx.AsyncClient() if debug_logger is None: - debug_logger = NoOpLogger() + debug_logger = get_default_logger() assert issubclass( type(async_client), AsyncHttpClient ), "The provided async_client must implement the AsyncHttpClient protocol." - + security: Any = None if callable(api_key): - security = lambda: models.Security(api_key = api_key()) # pylint: disable=unnecessary-lambda-assignment + security = lambda: models.Security(api_key=api_key()) # pylint: disable=unnecessary-lambda-assignment else: - security = models.Security(api_key = api_key) + security = models.Security(api_key=api_key) if server_url is not None: if url_params is not None: server_url = utils.template_url(server_url, url_params) - - - BaseSDK.__init__(self, SDKConfiguration( - client=client, - async_client=async_client, - security=security, - server_url=server_url, - server_idx=server_idx, - retry_config=retry_config, - timeout_ms=timeout_ms, - debug_logger=debug_logger - )) + + BaseSDK.__init__( + self, + SDKConfiguration( + client=client, + async_client=async_client, + security=security, + server_url=server_url, + server_idx=server_idx, + retry_config=retry_config, + timeout_ms=timeout_ms, + debug_logger=debug_logger, + ), + ) hooks = SDKHooks() current_server_url, *_ = self.sdk_configuration.get_server_details() - server_url, self.sdk_configuration.client = hooks.sdk_init(current_server_url, self.sdk_configuration.client) + server_url, self.sdk_configuration.client = hooks.sdk_init( + current_server_url, self.sdk_configuration.client + ) if current_server_url != server_url: self.sdk_configuration.server_url = server_url @@ -124,7 +126,6 @@ def __init__( self._init_sdks() - def _init_sdks(self): self.rag = Rag(self.sdk_configuration) self.filestorage = Filestorage(self.sdk_configuration) @@ -139,15 +140,13 @@ def _init_sdks(self): self.field_mappings = FieldMappings(self.sdk_configuration) self.events = Events(self.sdk_configuration) self.passthrough = Passthrough(self.sdk_configuration) - self.hris = Hris(self.sdk_configuration) self.marketingautomation = Marketingautomation(self.sdk_configuration) - self.ats = Ats(self.sdk_configuration) self.accounting = Accounting(self.sdk_configuration) self.ecommerce = Ecommerce(self.sdk_configuration) - - + def hello( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -161,7 +160,7 @@ def hello( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -178,40 +177,46 @@ def hello( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="hello", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="hello", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "text/plain"): return http_res.text - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def hello_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -225,10 +230,10 @@ async def hello_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/", base_url=base_url, @@ -242,40 +247,46 @@ async def hello_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="hello", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="hello", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "text/plain"): return http_res.text - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def health( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -289,7 +300,7 @@ def health( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -306,40 +317,46 @@ def health( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="health", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="health", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): return utils.unmarshal_json(http_res.text, Optional[float]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def health_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -353,10 +370,10 @@ async def health_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/health", base_url=base_url, @@ -370,34 +387,39 @@ async def health_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="health", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="health", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): return utils.unmarshal_json(http_res.text, Optional[float]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/sdkconfiguration.py b/src/panora_sdk/sdkconfiguration.py index 2ed58f7..d1d5a27 100644 --- a/src/panora_sdk/sdkconfiguration.py +++ b/src/panora_sdk/sdkconfiguration.py @@ -1,6 +1,5 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - from ._hooks import SDKHooks from .httpclient import AsyncHttpClient, HttpClient from .utils import Logger, RetryConfig, remove_suffix @@ -21,19 +20,20 @@ ] """Contains the list of servers available to the SDK""" + @dataclass class SDKConfiguration: client: HttpClient async_client: AsyncHttpClient debug_logger: Logger - security: Optional[Union[models.Security,Callable[[], models.Security]]] = None + security: Optional[Union[models.Security, Callable[[], models.Security]]] = None server_url: Optional[str] = "" server_idx: Optional[int] = 0 language: str = "python" openapi_doc_version: str = "1.0" - sdk_version: str = "0.7.0" - gen_version: str = "2.385.2" - user_agent: str = "speakeasy-sdk/python 0.7.0 2.385.2 1.0 panora-sdk" + sdk_version: str = "0.8.0" + gen_version: str = "2.460.1" + user_agent: str = "speakeasy-sdk/python 0.8.0 2.460.1 1.0 panora-sdk" retry_config: OptionalNullable[RetryConfig] = Field(default_factory=lambda: UNSET) timeout_ms: Optional[int] = None @@ -48,6 +48,5 @@ def get_server_details(self) -> Tuple[str, Dict[str, str]]: return SERVERS[self.server_idx], {} - def get_hooks(self) -> SDKHooks: return self._hooks diff --git a/src/panora_sdk/stages.py b/src/panora_sdk/stages.py index 7a20db2..182b0ff 100644 --- a/src/panora_sdk/stages.py +++ b/src/panora_sdk/stages.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Stages(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmStagesResponse: + ) -> Optional[models.ListCrmStagesResponse]: r"""List Stages :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmStagesRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/stages", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmStages", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmStages", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmStagesResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmStagesResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmStagesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmStagesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmStagesResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmStagesResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmStagesResponse: + ) -> Optional[models.ListCrmStagesResponse]: r"""List Stages :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmStagesRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/stages", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmStages", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmStages", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmStagesResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListCrmStagesResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmStagesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmStagesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmStagesResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmStagesResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmStageRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/stages/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmStage", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmStage", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmStageOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmStageOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmStageRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/stages/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmStage", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmStage", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmStageOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmStageOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/sync.py b/src/panora_sdk/sync.py index 9b5cbd1..798c031 100644 --- a/src/panora_sdk/sync.py +++ b/src/panora_sdk/sync.py @@ -1,17 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import BaseModel, OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Optional, Union, cast + class Sync(BaseSDK): - - def status( - self, *, + self, + *, vertical: models.PathParamVertical, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -19,7 +18,7 @@ def status( ): r"""Retrieve sync status of a certain vertical - :param vertical: + :param vertical: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -28,14 +27,14 @@ def status( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.StatusRequest( vertical=vertical, ) - + req = self.build_request( method="GET", path="/sync/status/{vertical}", @@ -50,40 +49,46 @@ def status( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="status", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="status", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def status_async( - self, *, + self, + *, vertical: models.PathParamVertical, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -91,7 +96,7 @@ async def status_async( ): r"""Retrieve sync status of a certain vertical - :param vertical: + :param vertical: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -100,15 +105,15 @@ async def status_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.StatusRequest( vertical=vertical, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/sync/status/{vertical}", base_url=base_url, @@ -122,40 +127,46 @@ async def status_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="status", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="status", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): return - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def resync( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -170,7 +181,7 @@ def resync( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -187,40 +198,46 @@ def resync( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="resync", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="resync", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.ResyncStatusDto]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def resync_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -235,10 +252,10 @@ async def resync_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="POST", path="/sync/resync", base_url=base_url, @@ -252,45 +269,53 @@ async def resync_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="resync", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="resync", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.ResyncStatusDto]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def update_pull_frequency( - self, *, - request: Union[models.UpdatePullFrequencyDto, models.UpdatePullFrequencyDtoTypedDict], + self, + *, + request: Union[ + models.UpdatePullFrequencyDto, models.UpdatePullFrequencyDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UpdatePullFrequencyResponseBody]: + ): r"""Update pull frequency for verticals :param request: The request object to send. @@ -302,17 +327,17 @@ def update_pull_frequency( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.UpdatePullFrequencyDto) request = cast(models.UpdatePullFrequencyDto, request) - + req = self.build_request( method="POST", - path="/sync/pull-frequencies", + path="/sync/pull_frequencies", base_url=base_url, url_variables=url_variables, request=request, @@ -320,52 +345,60 @@ def update_pull_frequency( request_has_path_params=False, request_has_query_params=True, user_agent_header="user-agent", - accept_header_value="application/json", + accept_header_value="*/*", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.UpdatePullFrequencyDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.UpdatePullFrequencyDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="updatePullFrequency", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="updatePullFrequency", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): - return None - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UpdatePullFrequencyResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def update_pull_frequency_async( - self, *, - request: Union[models.UpdatePullFrequencyDto, models.UpdatePullFrequencyDtoTypedDict], + self, + *, + request: Union[ + models.UpdatePullFrequencyDto, models.UpdatePullFrequencyDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> Optional[models.UpdatePullFrequencyResponseBody]: + ): r"""Update pull frequency for verticals :param request: The request object to send. @@ -377,17 +410,17 @@ async def update_pull_frequency_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.UpdatePullFrequencyDto) request = cast(models.UpdatePullFrequencyDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", - path="/sync/pull-frequencies", + path="/sync/pull_frequencies", base_url=base_url, url_variables=url_variables, request=request, @@ -395,47 +428,53 @@ async def update_pull_frequency_async( request_has_path_params=False, request_has_query_params=True, user_agent_header="user-agent", - accept_header_value="application/json", + accept_header_value="*/*", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.UpdatePullFrequencyDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.UpdatePullFrequencyDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="updatePullFrequency", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="updatePullFrequency", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "*"): - return None - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UpdatePullFrequencyResponseBody]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def get_pull_frequency( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -450,12 +489,12 @@ def get_pull_frequency( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( method="GET", - path="/sync/pull-frequencies", + path="/sync/pull_frequencies", base_url=base_url, url_variables=url_variables, request=None, @@ -467,40 +506,48 @@ def get_pull_frequency( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="getPullFrequency", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getPullFrequency", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UpdatePullFrequencyDto]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UpdatePullFrequencyDto] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def get_pull_frequency_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -515,12 +562,12 @@ async def get_pull_frequency_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", - path="/sync/pull-frequencies", + path="/sync/pull_frequencies", base_url=base_url, url_variables=url_variables, request=None, @@ -532,34 +579,41 @@ async def get_pull_frequency_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="getPullFrequency", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="getPullFrequency", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UpdatePullFrequencyDto]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UpdatePullFrequencyDto] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/tags.py b/src/panora_sdk/tags.py index 0378704..4cccd68 100644 --- a/src/panora_sdk/tags.py +++ b/src/panora_sdk/tags.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Tags(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingTagsResponse: + ) -> Optional[models.ListTicketingTagsResponse]: r"""List Tags :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingTagsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/tags", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingTags", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingTags", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingTagsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingTagsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingTagsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingTagsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingTagsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingTagsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingTagsResponse: + ) -> Optional[models.ListTicketingTagsResponse]: r"""List Tags :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingTagsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/tags", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingTags", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingTags", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingTagsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListTicketingTagsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingTagsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingTagsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingTagsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingTagsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingTagRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/tags/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingTag", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingTag", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTagOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTagOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingTagRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/tags/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingTag", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingTag", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTagOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTagOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/tasks.py b/src/panora_sdk/tasks.py index a890489..96f1109 100644 --- a/src/panora_sdk/tasks.py +++ b/src/panora_sdk/tasks.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Tasks(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmTaskResponse: + ) -> Optional[models.ListCrmTaskResponse]: r"""List Tasks :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmTaskRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/crm/tasks", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listCrmTask", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmTask", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmTaskResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListCrmTaskResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmTaskResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmTaskResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmTaskResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmTaskResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListCrmTaskResponse: + ) -> Optional[models.ListCrmTaskResponse]: r"""List Tasks :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListCrmTaskRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/tasks", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listCrmTask", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listCrmTask", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListCrmTaskResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,36 @@ def next_func() -> Optional[models.ListCrmTaskResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListCrmTaskResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListCrmTaskResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListCrmTaskResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListCrmTaskResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_crm_task_input: Union[models.UnifiedCrmTaskInput, models.UnifiedCrmTaskInputTypedDict], + unified_crm_task_input: Union[ + models.UnifiedCrmTaskInput, models.UnifiedCrmTaskInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +242,7 @@ def create( Create Tasks in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_task_input: + :param unified_crm_task_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +252,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmTaskRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_task_input=utils.get_pydantic_model(unified_crm_task_input, models.UnifiedCrmTaskInput), + unified_crm_task_input=utils.get_pydantic_model( + unified_crm_task_input, models.UnifiedCrmTaskInput + ), ) - + req = self.build_request( method="POST", path="/crm/tasks", @@ -251,45 +276,61 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_task_input, False, False, "json", models.UnifiedCrmTaskInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_task_input, + False, + False, + "json", + models.UnifiedCrmTaskInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createCrmTask", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmTask", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmTaskOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmTaskOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_crm_task_input: Union[models.UnifiedCrmTaskInput, models.UnifiedCrmTaskInputTypedDict], + unified_crm_task_input: Union[ + models.UnifiedCrmTaskInput, models.UnifiedCrmTaskInputTypedDict + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +341,7 @@ async def create_async( Create Tasks in any supported Crm software :param x_connection_token: The connection token - :param unified_crm_task_input: + :param unified_crm_task_input: :param remote_data: Set to true to include data from the original Crm software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +351,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateCrmTaskRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_crm_task_input=utils.get_pydantic_model(unified_crm_task_input, models.UnifiedCrmTaskInput), + unified_crm_task_input=utils.get_pydantic_model( + unified_crm_task_input, models.UnifiedCrmTaskInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/crm/tasks", base_url=base_url, @@ -332,43 +375,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_crm_task_input, False, False, "json", models.UnifiedCrmTaskInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_crm_task_input, + False, + False, + "json", + models.UnifiedCrmTaskInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createCrmTask", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createCrmTask", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmTaskOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmTaskOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +448,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmTaskRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/crm/tasks/{id}", @@ -415,40 +472,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveCrmTask", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmTask", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmTaskOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmTaskOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +536,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveCrmTaskRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/crm/tasks/{id}", base_url=base_url, @@ -495,34 +560,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveCrmTask", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveCrmTask", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedCrmTaskOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedCrmTaskOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/taxrates.py b/src/panora_sdk/taxrates.py index dd79274..20ad44f 100644 --- a/src/panora_sdk/taxrates.py +++ b/src/panora_sdk/taxrates.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Taxrates(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingTaxRateResponse: + ) -> Optional[models.ListAccountingTaxRateResponse]: r"""List TaxRates :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingTaxRateRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/taxrates", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingTaxRate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingTaxRate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingTaxRateResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListAccountingTaxRateResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingTaxRateResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingTaxRateResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingTaxRateResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingTaxRateResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingTaxRateResponse: + ) -> Optional[models.ListAccountingTaxRateResponse]: r"""List TaxRates :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingTaxRateRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/taxrates", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingTaxRate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingTaxRate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingTaxRateResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListAccountingTaxRateResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingTaxRateResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingTaxRateResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingTaxRateResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListAccountingTaxRateResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingTaxRateRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/taxrates/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingTaxRate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingTaxRate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingTaxrateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingTaxrateOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingTaxRateRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/taxrates/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingTaxRate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingTaxRate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingTaxrateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingTaxrateOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/teams.py b/src/panora_sdk/teams.py index df7ae31..42bbeed 100644 --- a/src/panora_sdk/teams.py +++ b/src/panora_sdk/teams.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Teams(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingTeamsResponse: + ) -> Optional[models.ListTicketingTeamsResponse]: r"""List Teams :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingTeamsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/teams", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingTeams", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingTeams", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingTeamsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingTeamsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingTeamsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingTeamsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingTeamsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingTeamsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingTeamsResponse: + ) -> Optional[models.ListTicketingTeamsResponse]: r"""List Teams :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingTeamsRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/teams", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingTeams", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingTeams", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingTeamsResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListTicketingTeamsResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingTeamsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingTeamsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingTeamsResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingTeamsResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingTeamRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/teams/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingTeam", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingTeam", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTeamOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTeamOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingTeamRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/teams/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingTeam", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingTeam", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTeamOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTeamOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/templates.py b/src/panora_sdk/templates.py index 05cd5d7..60835c6 100644 --- a/src/panora_sdk/templates.py +++ b/src/panora_sdk/templates.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Templates(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationTemplatesResponse: + ) -> Optional[models.ListMarketingautomationTemplatesResponse]: r"""List Templates :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationTemplatesRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/marketingautomation/templates", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listMarketingautomationTemplates", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationTemplates", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationTemplatesResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListMarketingautomationTemplatesResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationTemplatesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationTemplatesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationTemplatesResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationTemplatesResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListMarketingautomationTemplatesResponse: + ) -> Optional[models.ListMarketingautomationTemplatesResponse]: r"""List Templates :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListMarketingautomationTemplatesRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/templates", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listMarketingautomationTemplates", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listMarketingautomationTemplates", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListMarketingautomationTemplatesResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +203,38 @@ def next_func() -> Optional[models.ListMarketingautomationTemplatesResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListMarketingautomationTemplatesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListMarketingautomationTemplatesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListMarketingautomationTemplatesResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListMarketingautomationTemplatesResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_template_input: Union[models.UnifiedMarketingautomationTemplateInput, models.UnifiedMarketingautomationTemplateInputTypedDict], + unified_marketingautomation_template_input: Union[ + models.UnifiedMarketingautomationTemplateInput, + models.UnifiedMarketingautomationTemplateInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +245,7 @@ def create( Create a template in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_template_input: + :param unified_marketingautomation_template_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +255,19 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationTemplateRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_template_input=utils.get_pydantic_model(unified_marketingautomation_template_input, models.UnifiedMarketingautomationTemplateInput), + unified_marketingautomation_template_input=utils.get_pydantic_model( + unified_marketingautomation_template_input, + models.UnifiedMarketingautomationTemplateInput, + ), ) - + req = self.build_request( method="POST", path="/marketingautomation/templates", @@ -251,45 +280,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_template_input, False, False, "json", models.UnifiedMarketingautomationTemplateInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_template_input, + False, + False, + "json", + models.UnifiedMarketingautomationTemplateInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createMarketingautomationTemplate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationTemplate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_marketingautomation_template_input: Union[models.UnifiedMarketingautomationTemplateInput, models.UnifiedMarketingautomationTemplateInputTypedDict], + unified_marketingautomation_template_input: Union[ + models.UnifiedMarketingautomationTemplateInput, + models.UnifiedMarketingautomationTemplateInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +346,7 @@ async def create_async( Create a template in any supported Marketingautomation software :param x_connection_token: The connection token - :param unified_marketingautomation_template_input: + :param unified_marketingautomation_template_input: :param remote_data: Set to true to include data from the original Marketingautomation software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +356,20 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateMarketingautomationTemplateRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_marketingautomation_template_input=utils.get_pydantic_model(unified_marketingautomation_template_input, models.UnifiedMarketingautomationTemplateInput), + unified_marketingautomation_template_input=utils.get_pydantic_model( + unified_marketingautomation_template_input, + models.UnifiedMarketingautomationTemplateInput, + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/marketingautomation/templates", base_url=base_url, @@ -332,43 +381,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_marketingautomation_template_input, False, False, "json", models.UnifiedMarketingautomationTemplateInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_marketingautomation_template_input, + False, + False, + "json", + models.UnifiedMarketingautomationTemplateInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createMarketingautomationTemplate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createMarketingautomationTemplate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +454,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationTemplateRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/marketingautomation/templates/{id}", @@ -415,40 +478,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationTemplate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationTemplate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +542,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveMarketingautomationTemplateRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/marketingautomation/templates/{id}", base_url=base_url, @@ -495,34 +566,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveMarketingautomationTemplate", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveMarketingautomationTemplate", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedMarketingautomationTemplateOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/ticketing.py b/src/panora_sdk/ticketing.py index 7b76b24..9c5b104 100644 --- a/src/panora_sdk/ticketing.py +++ b/src/panora_sdk/ticketing.py @@ -6,12 +6,13 @@ from panora_sdk.collections import Collections from panora_sdk.comments import Comments from panora_sdk.contacts import Contacts -from panora_sdk.panora_ticketing_attachments import PanoraTicketingAttachments +from panora_sdk.panora_attachments import PanoraAttachments from panora_sdk.tags import Tags from panora_sdk.teams import Teams from panora_sdk.tickets import Tickets from panora_sdk.users import Users + class Ticketing(BaseSDK): tickets: Tickets users: Users @@ -21,12 +22,13 @@ class Ticketing(BaseSDK): comments: Comments tags: Tags teams: Teams - attachments: PanoraTicketingAttachments + attachments: PanoraAttachments + def __init__(self, sdk_config: SDKConfiguration) -> None: BaseSDK.__init__(self, sdk_config) self.sdk_configuration = sdk_config self._init_sdks() - + def _init_sdks(self): self.tickets = Tickets(self.sdk_configuration) self.users = Users(self.sdk_configuration) @@ -36,5 +38,4 @@ def _init_sdks(self): self.comments = Comments(self.sdk_configuration) self.tags = Tags(self.sdk_configuration) self.teams = Teams(self.sdk_configuration) - self.attachments = PanoraTicketingAttachments(self.sdk_configuration) - + self.attachments = PanoraAttachments(self.sdk_configuration) diff --git a/src/panora_sdk/tickets.py b/src/panora_sdk/tickets.py index 6982715..0e9e12e 100644 --- a/src/panora_sdk/tickets.py +++ b/src/panora_sdk/tickets.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional, Union + class Tickets(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingTicketResponse: + ) -> Optional[models.ListTicketingTicketResponse]: r"""List Tickets :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingTicketRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/tickets", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingTicket", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingTicket", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingTicketResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingTicketResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingTicketResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingTicketResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingTicketResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingTicketResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingTicketResponse: + ) -> Optional[models.ListTicketingTicketResponse]: r"""List Tickets :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingTicketRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/tickets", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingTicket", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingTicket", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingTicketResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,21 +202,37 @@ def next_func() -> Optional[models.ListTicketingTicketResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingTicketResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingTicketResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingTicketResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingTicketResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, x_connection_token: str, - unified_ticketing_ticket_input: Union[models.UnifiedTicketingTicketInput, models.UnifiedTicketingTicketInputTypedDict], + unified_ticketing_ticket_input: Union[ + models.UnifiedTicketingTicketInput, + models.UnifiedTicketingTicketInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -219,7 +243,7 @@ def create( Create Tickets in any supported Ticketing software :param x_connection_token: The connection token - :param unified_ticketing_ticket_input: + :param unified_ticketing_ticket_input: :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -229,16 +253,18 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateTicketingTicketRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ticketing_ticket_input=utils.get_pydantic_model(unified_ticketing_ticket_input, models.UnifiedTicketingTicketInput), + unified_ticketing_ticket_input=utils.get_pydantic_model( + unified_ticketing_ticket_input, models.UnifiedTicketingTicketInput + ), ) - + req = self.build_request( method="POST", path="/ticketing/tickets", @@ -251,45 +277,62 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ticketing_ticket_input, False, False, "json", models.UnifiedTicketingTicketInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ticketing_ticket_input, + False, + False, + "json", + models.UnifiedTicketingTicketInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createTicketingTicket", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createTicketingTicket", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTicketOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTicketOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, x_connection_token: str, - unified_ticketing_ticket_input: Union[models.UnifiedTicketingTicketInput, models.UnifiedTicketingTicketInputTypedDict], + unified_ticketing_ticket_input: Union[ + models.UnifiedTicketingTicketInput, + models.UnifiedTicketingTicketInputTypedDict, + ], remote_data: Optional[bool] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -300,7 +343,7 @@ async def create_async( Create Tickets in any supported Ticketing software :param x_connection_token: The connection token - :param unified_ticketing_ticket_input: + :param unified_ticketing_ticket_input: :param remote_data: Set to true to include data from the original Ticketing software. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -310,17 +353,19 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.CreateTicketingTicketRequest( x_connection_token=x_connection_token, remote_data=remote_data, - unified_ticketing_ticket_input=utils.get_pydantic_model(unified_ticketing_ticket_input, models.UnifiedTicketingTicketInput), + unified_ticketing_ticket_input=utils.get_pydantic_model( + unified_ticketing_ticket_input, models.UnifiedTicketingTicketInput + ), ) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/ticketing/tickets", base_url=base_url, @@ -332,43 +377,57 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_ticketing_ticket_input, False, False, "json", models.UnifiedTicketingTicketInput), + get_serialized_body=lambda: utils.serialize_request_body( + request.unified_ticketing_ticket_input, + False, + False, + "json", + models.UnifiedTicketingTicketInput, + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createTicketingTicket", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createTicketingTicket", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTicketOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTicketOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -391,16 +450,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingTicketRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/tickets/{id}", @@ -415,40 +474,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingTicket", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingTicket", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTicketOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTicketOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -471,17 +538,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingTicketRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/tickets/{id}", base_url=base_url, @@ -495,34 +562,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingTicket", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingTicket", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingTicketOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingTicketOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/timeoffbalances.py b/src/panora_sdk/timeoffbalances.py deleted file mode 100644 index 8f0efee..0000000 --- a/src/panora_sdk/timeoffbalances.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional - -class Timeoffbalances(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisTimeoffbalancesResponse: - r"""List TimeoffBalances - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisTimeoffbalancesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffbalances", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisTimeoffbalances", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisTimeoffbalancesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisTimeoffbalancesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisTimeoffbalancesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisTimeoffbalancesResponse: - r"""List TimeoffBalances - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisTimeoffbalancesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffbalances", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisTimeoffbalances", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisTimeoffbalancesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisTimeoffbalancesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisTimeoffbalancesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimeoffbalanceOutput]: - r"""Retrieve Time off Balances - - Retrieve Time off Balances from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the timeoffbalance you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisTimeoffbalanceRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffbalances/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisTimeoffbalance", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimeoffbalanceOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimeoffbalanceOutput]: - r"""Retrieve Time off Balances - - Retrieve Time off Balances from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the timeoffbalance you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisTimeoffbalanceRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffbalances/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisTimeoffbalance", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimeoffbalanceOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/timeoffs.py b/src/panora_sdk/timeoffs.py deleted file mode 100644 index 23e0bed..0000000 --- a/src/panora_sdk/timeoffs.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class Timeoffs(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisTimeoffsResponse: - r"""List Time Offs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisTimeoffsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisTimeoffs", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisTimeoffsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisTimeoffsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisTimeoffsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisTimeoffsResponse: - r"""List Time Offs - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisTimeoffsRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisTimeoffs", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisTimeoffsResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisTimeoffsResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisTimeoffsResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_hris_timeoff_input: Union[models.UnifiedHrisTimeoffInput, models.UnifiedHrisTimeoffInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimeoffOutput]: - r"""Create Timeoffs - - Create Timeoffs in any supported Hris software - - :param x_connection_token: The connection token - :param unified_hris_timeoff_input: - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateHrisTimeoffRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_hris_timeoff_input=utils.get_pydantic_model(unified_hris_timeoff_input, models.UnifiedHrisTimeoffInput), - ) - - req = self.build_request( - method="POST", - path="/hris/timeoffs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_hris_timeoff_input, False, False, "json", models.UnifiedHrisTimeoffInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createHrisTimeoff", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimeoffOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_hris_timeoff_input: Union[models.UnifiedHrisTimeoffInput, models.UnifiedHrisTimeoffInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimeoffOutput]: - r"""Create Timeoffs - - Create Timeoffs in any supported Hris software - - :param x_connection_token: The connection token - :param unified_hris_timeoff_input: - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateHrisTimeoffRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_hris_timeoff_input=utils.get_pydantic_model(unified_hris_timeoff_input, models.UnifiedHrisTimeoffInput), - ) - - req = self.build_request( - method="POST", - path="/hris/timeoffs", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_hris_timeoff_input, False, False, "json", models.UnifiedHrisTimeoffInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createHrisTimeoff", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimeoffOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimeoffOutput]: - r"""Retrieve Time Off - - Retrieve a Time Off from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the time off you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisTimeoffRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffs/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisTimeoff", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimeoffOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimeoffOutput]: - r"""Retrieve Time Off - - Retrieve a Time Off from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the time off you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisTimeoffRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/timeoffs/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisTimeoff", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimeoffOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/timesheetentries.py b/src/panora_sdk/timesheetentries.py deleted file mode 100644 index 94ba09a..0000000 --- a/src/panora_sdk/timesheetentries.py +++ /dev/null @@ -1,528 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from .basesdk import BaseSDK -from jsonpath import JSONPath -from panora_sdk import models -from panora_sdk._hooks import HookContext -from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils -from typing import Any, Dict, Optional, Union - -class Timesheetentries(BaseSDK): - - - def list( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisTimesheetentriesResponse: - r"""List Timesheetentries - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisTimesheetentriesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/timesheetentries", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="listHrisTimesheetentries", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisTimesheetentriesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisTimesheetentriesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisTimesheetentriesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def list_async( - self, *, - x_connection_token: str, - remote_data: Optional[bool] = None, - limit: Optional[float] = 50, - cursor: Optional[str] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> models.ListHrisTimesheetentriesResponse: - r"""List Timesheetentries - - :param x_connection_token: The connection token - :param remote_data: Set to true to include data from the original software. - :param limit: Set to get the number of records. - :param cursor: Set to get the number of records after this cursor. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.ListHrisTimesheetentriesRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=cursor, - ) - - req = self.build_request( - method="GET", - path="/hris/timesheetentries", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listHrisTimesheetentries", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - def next_func() -> Optional[models.ListHrisTimesheetentriesResponse]: - body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) - next_cursor = JSONPath("$.next_cursor").parse(body) - - if len(next_cursor) == 0: - return None - next_cursor = next_cursor[0] - - return self.list( - x_connection_token=x_connection_token, - remote_data=remote_data, - limit=limit, - cursor=next_cursor, - retries=retries, - ) - - if utils.match_response(http_res, "200", "application/json"): - return models.ListHrisTimesheetentriesResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListHrisTimesheetentriesResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def create( - self, *, - x_connection_token: str, - unified_hris_timesheet_entry_input: Union[models.UnifiedHrisTimesheetEntryInput, models.UnifiedHrisTimesheetEntryInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimesheetEntryOutput]: - r"""Create Timesheetentrys - - Create Timesheetentrys in any supported Hris software - - :param x_connection_token: The connection token - :param unified_hris_timesheet_entry_input: - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateHrisTimesheetentryRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_hris_timesheet_entry_input=utils.get_pydantic_model(unified_hris_timesheet_entry_input, models.UnifiedHrisTimesheetEntryInput), - ) - - req = self.build_request( - method="POST", - path="/hris/timesheetentries", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_hris_timesheet_entry_input, False, False, "json", models.UnifiedHrisTimesheetEntryInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="createHrisTimesheetentry", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimesheetEntryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def create_async( - self, *, - x_connection_token: str, - unified_hris_timesheet_entry_input: Union[models.UnifiedHrisTimesheetEntryInput, models.UnifiedHrisTimesheetEntryInputTypedDict], - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimesheetEntryOutput]: - r"""Create Timesheetentrys - - Create Timesheetentrys in any supported Hris software - - :param x_connection_token: The connection token - :param unified_hris_timesheet_entry_input: - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.CreateHrisTimesheetentryRequest( - x_connection_token=x_connection_token, - remote_data=remote_data, - unified_hris_timesheet_entry_input=utils.get_pydantic_model(unified_hris_timesheet_entry_input, models.UnifiedHrisTimesheetEntryInput), - ) - - req = self.build_request( - method="POST", - path="/hris/timesheetentries", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=True, - request_has_path_params=False, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request.unified_hris_timesheet_entry_input, False, False, "json", models.UnifiedHrisTimesheetEntryInput), - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createHrisTimesheetentry", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "201", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimesheetEntryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - def retrieve( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimesheetEntryOutput]: - r"""Retrieve Timesheetentry - - Retrieve an Timesheetentry from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the timesheetentry you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisTimesheetentryRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/timesheetentries/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveHrisTimesheetentry", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimesheetEntryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - - - async def retrieve_async( - self, *, - x_connection_token: str, - id: str, - remote_data: Optional[bool] = None, - retries: OptionalNullable[utils.RetryConfig] = UNSET, - server_url: Optional[str] = None, - timeout_ms: Optional[int] = None, - ) -> Optional[models.UnifiedHrisTimesheetEntryOutput]: - r"""Retrieve Timesheetentry - - Retrieve an Timesheetentry from any connected Hris software - - :param x_connection_token: The connection token - :param id: id of the timesheetentry you want to retrieve. - :param remote_data: Set to true to include data from the original Hris software. - :param retries: Override the default retry configuration for this method - :param server_url: Override the default server URL for this method - :param timeout_ms: Override the default request timeout configuration for this method in milliseconds - """ - base_url = None - url_variables = None - if timeout_ms is None: - timeout_ms = self.sdk_configuration.timeout_ms - - if server_url is not None: - base_url = server_url - - request = models.RetrieveHrisTimesheetentryRequest( - x_connection_token=x_connection_token, - id=id, - remote_data=remote_data, - ) - - req = self.build_request( - method="GET", - path="/hris/timesheetentries/{id}", - base_url=base_url, - url_variables=url_variables, - request=request, - request_body_required=False, - request_has_path_params=True, - request_has_query_params=True, - user_agent_header="user-agent", - accept_header_value="application/json", - security=self.sdk_configuration.security, - timeout_ms=timeout_ms, - ) - - if retries == UNSET: - if self.sdk_configuration.retry_config is not UNSET: - retries = self.sdk_configuration.retry_config - - retry_config = None - if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - - http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveHrisTimesheetentry", oauth2_scopes=[], security_source=self.sdk_configuration.security), - request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config - ) - - if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedHrisTimesheetEntryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) - - diff --git a/src/panora_sdk/trackingcategories.py b/src/panora_sdk/trackingcategories.py index dd22b7c..b32ada1 100644 --- a/src/panora_sdk/trackingcategories.py +++ b/src/panora_sdk/trackingcategories.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Trackingcategories(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingTrackingCategorysResponse: + ) -> Optional[models.ListAccountingTrackingCategorysResponse]: r"""List TrackingCategorys :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingTrackingCategorysRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/trackingcategories", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingTrackingCategorys", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingTrackingCategorys", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingTrackingCategorysResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingTrackingCategorysResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingTrackingCategorysResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingTrackingCategorysResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingTrackingCategorysResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingTrackingCategorysResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingTrackingCategorysResponse: + ) -> Optional[models.ListAccountingTrackingCategorysResponse]: r"""List TrackingCategorys :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingTrackingCategorysRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/trackingcategories", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingTrackingCategorys", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingTrackingCategorys", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingTrackingCategorysResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingTrackingCategorysResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingTrackingCategorysResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingTrackingCategorysResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingTrackingCategorysResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingTrackingCategorysResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingTrackingCategoryRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/trackingcategories/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingTrackingCategory", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingTrackingCategory", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingTrackingcategoryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingTrackingcategoryOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingTrackingCategoryRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/trackingcategories/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingTrackingCategory", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingTrackingCategory", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingTrackingcategoryOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingTrackingcategoryOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/transactions.py b/src/panora_sdk/transactions.py index decfc17..7cb258a 100644 --- a/src/panora_sdk/transactions.py +++ b/src/panora_sdk/transactions.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Transactions(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingTransactionResponse: + ) -> Optional[models.ListAccountingTransactionResponse]: r"""List Transactions :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingTransactionRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/transactions", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingTransaction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingTransaction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingTransactionResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingTransactionResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingTransactionResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingTransactionResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingTransactionResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingTransactionResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingTransactionResponse: + ) -> Optional[models.ListAccountingTransactionResponse]: r"""List Transactions :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingTransactionRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/transactions", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingTransaction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingTransaction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingTransactionResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingTransactionResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingTransactionResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingTransactionResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingTransactionResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingTransactionResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingTransactionRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/transactions/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingTransaction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingTransaction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingTransactionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingTransactionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingTransactionRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/transactions/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingTransaction", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingTransaction", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingTransactionOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingTransactionOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/types/basemodel.py b/src/panora_sdk/types/basemodel.py index 85f7c61..a6187ef 100644 --- a/src/panora_sdk/types/basemodel.py +++ b/src/panora_sdk/types/basemodel.py @@ -2,8 +2,8 @@ from pydantic import ConfigDict, model_serializer from pydantic import BaseModel as PydanticBaseModel -from typing import Literal, Optional, TypeVar, Union, NewType -from typing_extensions import TypeAliasType +from typing import TYPE_CHECKING, Literal, Optional, TypeVar, Union, NewType +from typing_extensions import TypeAliasType, TypeAlias class BaseModel(PydanticBaseModel): @@ -26,10 +26,14 @@ def __bool__(self) -> Literal[False]: T = TypeVar("T") -Nullable = TypeAliasType("Nullable", Union[T, None], type_params=(T,)) -OptionalNullable = TypeAliasType( - "OptionalNullable", Union[Optional[Nullable[T]], Unset], type_params=(T,) -) +if TYPE_CHECKING: + Nullable: TypeAlias = Union[T, None] + OptionalNullable: TypeAlias = Union[Optional[Nullable[T]], Unset] +else: + Nullable = TypeAliasType("Nullable", Union[T, None], type_params=(T,)) + OptionalNullable = TypeAliasType( + "OptionalNullable", Union[Optional[Nullable[T]], Unset], type_params=(T,) + ) UnrecognizedInt = NewType("UnrecognizedInt", int) UnrecognizedStr = NewType("UnrecognizedStr", str) diff --git a/src/panora_sdk/users.py b/src/panora_sdk/users.py index 61437a1..1a9f61d 100644 --- a/src/panora_sdk/users.py +++ b/src/panora_sdk/users.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Users(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingUsersResponse: + ) -> Optional[models.ListTicketingUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/ticketing/users", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listTicketingUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,40 @@ def next_func() -> Optional[models.ListTicketingUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingUsersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingUsersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListTicketingUsersResponse: + ) -> Optional[models.ListTicketingUsersResponse]: r"""List Users :param x_connection_token: The connection token @@ -132,18 +142,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListTicketingUsersRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/users", base_url=base_url, @@ -157,28 +167,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listTicketingUsers", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listTicketingUsers", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListTicketingUsersResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +202,32 @@ def next_func() -> Optional[models.ListTicketingUsersResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListTicketingUsersResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListTicketingUsersResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListTicketingUsersResponse( + result=utils.unmarshal_json( + http_res.text, Optional[models.ListTicketingUsersResponseBody] + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +250,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/ticketing/users/{id}", @@ -253,40 +274,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveTicketingUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +338,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveTicketingUserRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/ticketing/users/{id}", base_url=base_url, @@ -333,34 +362,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveTicketingUser", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveTicketingUser", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedTicketingUserOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedTicketingUserOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/utils/__init__.py b/src/panora_sdk/utils/__init__.py index 95aa1b6..26d51ae 100644 --- a/src/panora_sdk/utils/__init__.py +++ b/src/panora_sdk/utils/__init__.py @@ -27,14 +27,23 @@ serialize_float, serialize_int, stream_to_text, + stream_to_text_async, + stream_to_bytes, + stream_to_bytes_async, + validate_const, validate_decimal, validate_float, validate_int, validate_open_enum, ) from .url import generate_url, template_url, remove_suffix -from .values import get_global_from_env, match_content_type, match_status_codes, match_response -from .logger import Logger, get_body_content, NoOpLogger +from .values import ( + get_global_from_env, + match_content_type, + match_status_codes, + match_response, +) +from .logger import Logger, get_body_content, get_default_logger __all__ = [ "BackoffStrategy", @@ -43,6 +52,7 @@ "FormMetadata", "generate_url", "get_body_content", + "get_default_logger", "get_discriminator", "get_global_from_env", "get_headers", @@ -57,7 +67,6 @@ "match_status_codes", "match_response", "MultipartFormMetadata", - "NoOpLogger", "OpenEnumMeta", "PathParamMetadata", "QueryParamMetadata", @@ -74,10 +83,14 @@ "serialize_request_body", "SerializedRequestBody", "stream_to_text", + "stream_to_text_async", + "stream_to_bytes", + "stream_to_bytes_async", "template_url", "unmarshal", "unmarshal_json", "validate_decimal", + "validate_const", "validate_float", "validate_int", "validate_open_enum", diff --git a/src/panora_sdk/utils/annotations.py b/src/panora_sdk/utils/annotations.py index 0d17472..5b3bbb0 100644 --- a/src/panora_sdk/utils/annotations.py +++ b/src/panora_sdk/utils/annotations.py @@ -1,5 +1,6 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" +from enum import Enum from typing import Any def get_discriminator(model: Any, fieldname: str, key: str) -> str: @@ -10,10 +11,20 @@ def get_discriminator(model: Any, fieldname: str, key: str) -> str: raise ValueError(f'Could not find discriminator key {key} in {model}') from e if hasattr(model, fieldname): - return f'{getattr(model, fieldname)}' + attr = getattr(model, fieldname) + + if isinstance(attr, Enum): + return f'{attr.value}' + + return f'{attr}' fieldname = fieldname.upper() if hasattr(model, fieldname): - return f'{getattr(model, fieldname)}' + attr = getattr(model, fieldname) + + if isinstance(attr, Enum): + return f'{attr.value}' + + return f'{attr}' raise ValueError(f'Could not find discriminator field {fieldname} in {model}') diff --git a/src/panora_sdk/utils/eventstreaming.py b/src/panora_sdk/utils/eventstreaming.py index 7789cfd..553b386 100644 --- a/src/panora_sdk/utils/eventstreaming.py +++ b/src/panora_sdk/utils/eventstreaming.py @@ -147,15 +147,14 @@ def _parse_event( data = data[:-1] event.data = data - if ( - data.isnumeric() - or data == "true" - or data == "false" - or data == "null" - or data.startswith("{") - or data.startswith("[") - or data.startswith('"') - ): + data_is_primitive = ( + data.isnumeric() or data == "true" or data == "false" or data == "null" + ) + data_is_json = ( + data.startswith("{") or data.startswith("[") or data.startswith('"') + ) + + if data_is_primitive or data_is_json: try: event.data = json.loads(data) except Exception: diff --git a/src/panora_sdk/utils/forms.py b/src/panora_sdk/utils/forms.py index 07f9b23..9f5a731 100644 --- a/src/panora_sdk/utils/forms.py +++ b/src/panora_sdk/utils/forms.py @@ -17,7 +17,7 @@ MultipartFormMetadata, find_field_metadata, ) -from .values import _val_to_string +from .values import _is_set, _val_to_string def _populate_form( @@ -27,7 +27,7 @@ def _populate_form( delimiter: str, form: Dict[str, List[str]], ): - if obj is None: + if not _is_set(obj): return form if isinstance(obj, BaseModel): @@ -41,7 +41,7 @@ def _populate_form( continue val = getattr(obj, name) - if val is None: + if not _is_set(val): continue if explode: @@ -54,7 +54,7 @@ def _populate_form( elif isinstance(obj, Dict): items = [] for key, value in obj.items(): - if value is None: + if not _is_set(value): continue if explode: @@ -68,7 +68,7 @@ def _populate_form( items = [] for value in obj: - if value is None: + if not _is_set(value): continue if explode: @@ -102,7 +102,7 @@ def serialize_multipart_form( field = request_fields[name] val = getattr(request, name) - if val is None: + if not _is_set(val): continue field_metadata = find_field_metadata(field, MultipartFormMetadata) @@ -156,7 +156,7 @@ def serialize_multipart_form( values = [] for value in val: - if value is None: + if not _is_set(value): continue values.append(_val_to_string(value)) @@ -176,7 +176,7 @@ def serialize_form_data(data: Any) -> Dict[str, Any]: field = data_fields[name] val = getattr(data, name) - if val is None: + if not _is_set(val): continue metadata = find_field_metadata(field, FormMetadata) @@ -200,7 +200,8 @@ def serialize_form_data(data: Any) -> Dict[str, Any]: raise ValueError(f"Invalid form style for field {name}") elif isinstance(data, Dict): for key, value in data.items(): - form[key] = [_val_to_string(value)] + if _is_set(value): + form[key] = [_val_to_string(value)] else: raise TypeError(f"Invalid request body type {type(data)} for form data") diff --git a/src/panora_sdk/utils/headers.py b/src/panora_sdk/utils/headers.py index e14a0f4..37864cb 100644 --- a/src/panora_sdk/utils/headers.py +++ b/src/panora_sdk/utils/headers.py @@ -15,16 +15,16 @@ find_field_metadata, ) -from .values import _populate_from_globals, _val_to_string +from .values import _is_set, _populate_from_globals, _val_to_string def get_headers(headers_params: Any, gbls: Optional[Any] = None) -> Dict[str, str]: headers: Dict[str, str] = {} globals_already_populated = [] - if headers_params is not None: + if _is_set(headers_params): globals_already_populated = _populate_headers(headers_params, gbls, headers, []) - if gbls is not None: + if _is_set(gbls): _populate_headers(gbls, None, headers, globals_already_populated) return headers @@ -67,7 +67,7 @@ def _populate_headers( def _serialize_header(explode: bool, obj: Any) -> str: - if obj is None: + if not _is_set(obj): return "" if isinstance(obj, BaseModel): @@ -83,7 +83,7 @@ def _serialize_header(explode: bool, obj: Any) -> str: f_name = obj_field.alias if obj_field.alias is not None else name val = getattr(obj, name) - if val is None: + if not _is_set(val): continue if explode: @@ -98,7 +98,7 @@ def _serialize_header(explode: bool, obj: Any) -> str: items = [] for key, value in obj.items(): - if value is None: + if not _is_set(value): continue if explode: @@ -113,14 +113,14 @@ def _serialize_header(explode: bool, obj: Any) -> str: items = [] for value in obj: - if value is None: + if not _is_set(value): continue items.append(_val_to_string(value)) if len(items) > 0: return ",".join(items) - else: + elif _is_set(obj): return f"{_val_to_string(obj)}" return "" diff --git a/src/panora_sdk/utils/logger.py b/src/panora_sdk/utils/logger.py index 7e4bbea..b661aff 100644 --- a/src/panora_sdk/utils/logger.py +++ b/src/panora_sdk/utils/logger.py @@ -3,14 +3,20 @@ import httpx from typing import Any, Protocol + class Logger(Protocol): def debug(self, msg: str, *args: Any, **kwargs: Any) -> None: pass + class NoOpLogger: def debug(self, msg: str, *args: Any, **kwargs: Any) -> None: pass + def get_body_content(req: httpx.Request) -> str: return "" if not hasattr(req, "_content") else str(req.content) + +def get_default_logger() -> Logger: + return NoOpLogger() diff --git a/src/panora_sdk/utils/queryparams.py b/src/panora_sdk/utils/queryparams.py index 1c8c583..37a6e7f 100644 --- a/src/panora_sdk/utils/queryparams.py +++ b/src/panora_sdk/utils/queryparams.py @@ -15,7 +15,12 @@ QueryParamMetadata, find_field_metadata, ) -from .values import _get_serialized_params, _populate_from_globals, _val_to_string +from .values import ( + _get_serialized_params, + _is_set, + _populate_from_globals, + _val_to_string, +) from .forms import _populate_form @@ -26,7 +31,7 @@ def get_query_params( params: Dict[str, List[str]] = {} globals_already_populated = _populate_query_params(query_params, gbls, params, []) - if gbls is not None: + if _is_set(gbls): _populate_query_params(gbls, None, params, globals_already_populated) return params @@ -55,7 +60,7 @@ def _populate_query_params( if not metadata: continue - value = getattr(query_params, name) if query_params is not None else None + value = getattr(query_params, name) if _is_set(query_params) else None value, global_found = _populate_from_globals( name, value, QueryParamMetadata, gbls @@ -99,7 +104,7 @@ def _populate_deep_object_query_params( obj: Any, params: Dict[str, List[str]], ): - if obj is None: + if not _is_set(obj): return if isinstance(obj, BaseModel): @@ -113,10 +118,7 @@ def _populate_deep_object_query_params_basemodel( obj: Any, params: Dict[str, List[str]], ): - if obj is None: - return - - if not isinstance(obj, BaseModel): + if not _is_set(obj) or not isinstance(obj, BaseModel): return obj_fields: Dict[str, FieldInfo] = obj.__class__.model_fields @@ -128,11 +130,11 @@ def _populate_deep_object_query_params_basemodel( params_key = f"{prior_params_key}[{f_name}]" obj_param_metadata = find_field_metadata(obj_field, QueryParamMetadata) - if obj_param_metadata is None: + if not _is_set(obj_param_metadata): continue obj_val = getattr(obj, name) - if obj_val is None: + if not _is_set(obj_val): continue if isinstance(obj_val, BaseModel): @@ -150,11 +152,11 @@ def _populate_deep_object_query_params_dict( value: Dict, params: Dict[str, List[str]], ): - if value is None: + if not _is_set(value): return for key, val in value.items(): - if val is None: + if not _is_set(val): continue params_key = f"{prior_params_key}[{key}]" @@ -174,11 +176,11 @@ def _populate_deep_object_query_params_list( value: List, params: Dict[str, List[str]], ): - if value is None: + if not _is_set(value): return for val in value: - if val is None: + if not _is_set(val): continue if params.get(params_key) is None: diff --git a/src/panora_sdk/utils/retries.py b/src/panora_sdk/utils/retries.py index 8070fae..4d60867 100644 --- a/src/panora_sdk/utils/retries.py +++ b/src/panora_sdk/utils/retries.py @@ -1,5 +1,6 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" +import asyncio import random import time from typing import List @@ -76,7 +77,7 @@ def do_request() -> httpx.Response: status_major = res.status_code / 100 - if status_major >= code_range and status_major < code_range + 1: + if code_range <= status_major < code_range + 1: raise TemporaryError(res) else: parsed_code = int(code) @@ -125,7 +126,7 @@ async def do_request() -> httpx.Response: status_major = res.status_code / 100 - if status_major >= code_range and status_major < code_range + 1: + if code_range <= status_major < code_range + 1: raise TemporaryError(res) else: parsed_code = int(code) @@ -212,5 +213,5 @@ async def retry_with_backoff_async( raise sleep = (initial_interval / 1000) * exponent**retries + random.uniform(0, 1) sleep = min(sleep, max_interval / 1000) - time.sleep(sleep) + await asyncio.sleep(sleep) retries += 1 diff --git a/src/panora_sdk/utils/security.py b/src/panora_sdk/utils/security.py index aab4cb6..295a3f4 100644 --- a/src/panora_sdk/utils/security.py +++ b/src/panora_sdk/utils/security.py @@ -16,7 +16,6 @@ ) - def get_security(security: Any) -> Tuple[Dict[str, str], Dict[str, List[str]]]: headers: Dict[str, str] = {} query_params: Dict[str, List[str]] = {} @@ -42,8 +41,10 @@ def get_security(security: Any) -> Tuple[Dict[str, str], Dict[str, List[str]]]: _parse_security_option(headers, query_params, value) return headers, query_params if metadata.scheme: - # Special case for basic auth which could be a flattened model - if metadata.sub_type == "basic" and not isinstance(value, BaseModel): + # Special case for basic auth or custom auth which could be a flattened model + if metadata.sub_type in ["basic", "custom"] and not isinstance( + value, BaseModel + ): _parse_security_scheme(headers, query_params, metadata, name, security) else: _parse_security_scheme(headers, query_params, metadata, name, value) @@ -80,9 +81,12 @@ def _parse_security_scheme( sub_type = scheme_metadata.sub_type if isinstance(scheme, BaseModel): - if scheme_type == "http" and sub_type == "basic": - _parse_basic_auth_scheme(headers, scheme) - return + if scheme_type == "http": + if sub_type == "basic": + _parse_basic_auth_scheme(headers, scheme) + return + if sub_type == "custom": + return scheme_fields: Dict[str, FieldInfo] = scheme.__class__.model_fields for name in scheme_fields: @@ -131,6 +135,8 @@ def _parse_security_scheme_value( elif scheme_type == "http": if sub_type == "bearer": headers[header_name] = _apply_bearer(value) + elif sub_type == "custom": + return else: raise ValueError("sub type {sub_type} not supported") else: diff --git a/src/panora_sdk/utils/serializers.py b/src/panora_sdk/utils/serializers.py index a98998a..c5eb365 100644 --- a/src/panora_sdk/utils/serializers.py +++ b/src/panora_sdk/utils/serializers.py @@ -9,13 +9,15 @@ from pydantic_core import from_json from typing_inspect import is_optional_type -from ..types.basemodel import BaseModel, Nullable, OptionalNullable +from ..types.basemodel import BaseModel, Nullable, OptionalNullable, Unset def serialize_decimal(as_str: bool): def serialize(d): if is_optional_type(type(d)) and d is None: return None + if isinstance(d, Unset): + return d if not isinstance(d, Decimal): raise ValueError("Expected Decimal object") @@ -29,7 +31,7 @@ def validate_decimal(d): if d is None: return None - if isinstance(d, Decimal): + if isinstance(d, (Decimal, Unset)): return d if not isinstance(d, (str, int, float)): @@ -42,6 +44,8 @@ def serialize_float(as_str: bool): def serialize(f): if is_optional_type(type(f)) and f is None: return None + if isinstance(f, Unset): + return f if not isinstance(f, float): raise ValueError("Expected float") @@ -55,7 +59,7 @@ def validate_float(f): if f is None: return None - if isinstance(f, float): + if isinstance(f, (float, Unset)): return f if not isinstance(f, str): @@ -65,14 +69,16 @@ def validate_float(f): def serialize_int(as_str: bool): - def serialize(b): - if is_optional_type(type(b)) and b is None: + def serialize(i): + if is_optional_type(type(i)) and i is None: return None + if isinstance(i, Unset): + return i - if not isinstance(b, int): + if not isinstance(i, int): raise ValueError("Expected int") - return str(b) if as_str else b + return str(i) if as_str else i return serialize @@ -81,7 +87,7 @@ def validate_int(b): if b is None: return None - if isinstance(b, int): + if isinstance(b, (int, Unset)): return b if not isinstance(b, str): @@ -95,6 +101,9 @@ def validate(e): if e is None: return None + if isinstance(e, Unset): + return e + if is_int: if not isinstance(e, int): raise ValueError("Expected int") @@ -107,6 +116,19 @@ def validate(e): return validate +def validate_const(v): + def validate(c): + if is_optional_type(type(c)) and c is None: + return None + + if v != c: + raise ValueError(f"Expected {v}") + + return c + + return validate + + def unmarshal_json(raw, typ: Any) -> Any: return unmarshal(from_json(raw), typ) @@ -163,6 +185,18 @@ def stream_to_text(stream: httpx.Response) -> str: return "".join(stream.iter_text()) +async def stream_to_text_async(stream: httpx.Response) -> str: + return "".join([chunk async for chunk in stream.aiter_text()]) + + +def stream_to_bytes(stream: httpx.Response) -> bytes: + return stream.content + + +async def stream_to_bytes_async(stream: httpx.Response) -> bytes: + return await stream.aread() + + def get_pydantic_model(data: Any, typ: Any) -> Any: if not _contains_pydantic_model(data): return unmarshal(data, typ) diff --git a/src/panora_sdk/utils/url.py b/src/panora_sdk/utils/url.py index b201bfa..c78ccba 100644 --- a/src/panora_sdk/utils/url.py +++ b/src/panora_sdk/utils/url.py @@ -18,7 +18,12 @@ PathParamMetadata, find_field_metadata, ) -from .values import _get_serialized_params, _populate_from_globals, _val_to_string +from .values import ( + _get_serialized_params, + _is_set, + _populate_from_globals, + _val_to_string, +) def generate_url( @@ -32,7 +37,7 @@ def generate_url( globals_already_populated = _populate_path_params( path_params, gbls, path_param_values, [] ) - if gbls is not None: + if _is_set(gbls): _populate_path_params(gbls, None, path_param_values, globals_already_populated) for key, value in path_param_values.items(): @@ -64,14 +69,14 @@ def _populate_path_params( if param_metadata is None: continue - param = getattr(path_params, name) if path_params is not None else None + param = getattr(path_params, name) if _is_set(path_params) else None param, global_found = _populate_from_globals( name, param, PathParamMetadata, gbls ) if global_found: globals_already_populated.append(name) - if param is None: + if not _is_set(param): continue f_name = field.alias if field.alias is not None else name @@ -87,13 +92,13 @@ def _populate_path_params( if param_metadata.style == "simple": if isinstance(param, List): for pp_val in param: - if pp_val is None: + if not _is_set(pp_val): continue pp_vals.append(_val_to_string(pp_val)) path_param_values[f_name] = ",".join(pp_vals) elif isinstance(param, Dict): for pp_key in param: - if param[pp_key] is None: + if not _is_set(param[pp_key]): continue if param_metadata.explode: pp_vals.append(f"{pp_key}={_val_to_string(param[pp_key])}") @@ -116,7 +121,7 @@ def _populate_path_params( ) param_field_val = getattr(param, name) - if param_field_val is None: + if not _is_set(param_field_val): continue if param_metadata.explode: pp_vals.append( @@ -127,7 +132,7 @@ def _populate_path_params( f"{param_name},{_val_to_string(param_field_val)}" ) path_param_values[f_name] = ",".join(pp_vals) - else: + elif _is_set(param): path_param_values[f_name] = _val_to_string(param) return globals_already_populated diff --git a/src/panora_sdk/utils/values.py b/src/panora_sdk/utils/values.py index 24ccae3..2b4b683 100644 --- a/src/panora_sdk/utils/values.py +++ b/src/panora_sdk/utils/values.py @@ -10,6 +10,8 @@ from pydantic import BaseModel from pydantic.fields import FieldInfo +from ..types.basemodel import Unset + from .serializers import marshal_json from .metadata import ParamMetadata, find_field_metadata @@ -126,3 +128,7 @@ def _get_serialized_params( params[field_name] = marshal_json(obj, typ) return params + + +def _is_set(value: Any) -> bool: + return value is not None and not isinstance(value, Unset) diff --git a/src/panora_sdk/vendorcredits.py b/src/panora_sdk/vendorcredits.py index 80090e7..5099b32 100644 --- a/src/panora_sdk/vendorcredits.py +++ b/src/panora_sdk/vendorcredits.py @@ -2,25 +2,24 @@ from .basesdk import BaseSDK from jsonpath import JSONPath -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, Optional + class Vendorcredits(BaseSDK): - - def list( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingVendorCreditResponse: + ) -> Optional[models.ListAccountingVendorCreditResponse]: r"""List VendorCredits :param x_connection_token: The connection token @@ -35,17 +34,17 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingVendorCreditRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - + req = self.build_request( method="GET", path="/accounting/vendorcredits", @@ -60,28 +59,26 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listAccountingVendorCredit", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingVendorCredit", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingVendorCreditResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -97,27 +94,41 @@ def next_func() -> Optional[models.ListAccountingVendorCreditResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingVendorCreditResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingVendorCreditResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingVendorCreditResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingVendorCreditResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, x_connection_token: str, remote_data: Optional[bool] = None, - limit: Optional[float] = 50, + limit: Optional[float] = None, cursor: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, - ) -> models.ListAccountingVendorCreditResponse: + ) -> Optional[models.ListAccountingVendorCreditResponse]: r"""List VendorCredits :param x_connection_token: The connection token @@ -132,18 +143,18 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.ListAccountingVendorCreditRequest( x_connection_token=x_connection_token, remote_data=remote_data, limit=limit, cursor=cursor, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/vendorcredits", base_url=base_url, @@ -157,28 +168,26 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listAccountingVendorCredit", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listAccountingVendorCredit", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + def next_func() -> Optional[models.ListAccountingVendorCreditResponse]: body = utils.unmarshal_json(http_res.text, Dict[Any, Any]) next_cursor = JSONPath("$.next_cursor").parse(body) @@ -194,19 +203,33 @@ def next_func() -> Optional[models.ListAccountingVendorCreditResponse]: cursor=next_cursor, retries=retries, ) - + if utils.match_response(http_res, "200", "application/json"): - return models.ListAccountingVendorCreditResponse(result=utils.unmarshal_json(http_res.text, Optional[models.ListAccountingVendorCreditResponseBody]), next=next_func) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return models.ListAccountingVendorCreditResponse( + result=utils.unmarshal_json( + http_res.text, + Optional[models.ListAccountingVendorCreditResponseBody], + ), + next=next_func, + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def retrieve( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -229,16 +252,16 @@ def retrieve( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingVendorCreditRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - + req = self.build_request( method="GET", path="/accounting/vendorcredits/{id}", @@ -253,40 +276,48 @@ def retrieve( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="retrieveAccountingVendorCredit", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingVendorCredit", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingVendorcreditOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingVendorcreditOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def retrieve_async( - self, *, + self, + *, x_connection_token: str, id: str, remote_data: Optional[bool] = None, @@ -309,17 +340,17 @@ async def retrieve_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.RetrieveAccountingVendorCreditRequest( x_connection_token=x_connection_token, id=id, remote_data=remote_data, ) - - req = self.build_request( + + req = self.build_request_async( method="GET", path="/accounting/vendorcredits/{id}", base_url=base_url, @@ -333,34 +364,41 @@ async def retrieve_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="retrieveAccountingVendorCredit", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="retrieveAccountingVendorCredit", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[models.UnifiedAccountingVendorcreditOutput]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + return utils.unmarshal_json( + http_res.text, Optional[models.UnifiedAccountingVendorcreditOutput] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) diff --git a/src/panora_sdk/webhooks.py b/src/panora_sdk/webhooks.py index 4db5c4b..4c18e09 100644 --- a/src/panora_sdk/webhooks.py +++ b/src/panora_sdk/webhooks.py @@ -1,17 +1,16 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from .basesdk import BaseSDK -from panora_sdk import models +from panora_sdk import models, utils from panora_sdk._hooks import HookContext from panora_sdk.types import BaseModel, OptionalNullable, UNSET -import panora_sdk.utils as utils from typing import Any, Dict, List, Optional, Union, cast + class Webhooks(BaseSDK): - - def list( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -26,7 +25,7 @@ def list( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url req = self.build_request( @@ -43,40 +42,48 @@ def list( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="listWebhooks", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listWebhooks", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.WebhookResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.WebhookResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def list_async( - self, *, + self, + *, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -91,10 +98,10 @@ async def list_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - req = self.build_request( + req = self.build_request_async( method="GET", path="/webhooks", base_url=base_url, @@ -108,40 +115,48 @@ async def list_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="listWebhooks", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="listWebhooks", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "200", "application/json"): - return utils.unmarshal_json(http_res.text, Optional[List[models.WebhookResponse]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + return utils.unmarshal_json( + http_res.text, Optional[List[models.WebhookResponse]] + ) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def create( - self, *, + self, + *, request: Union[models.WebhookDto, models.WebhookDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -158,14 +173,14 @@ def create( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.WebhookDto) request = cast(models.WebhookDto, request) - + req = self.build_request( method="POST", path="/webhooks", @@ -178,43 +193,51 @@ def create( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.WebhookDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.WebhookDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="createWebhookPublic", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createWebhookPublic", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.WebhookResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def create_async( - self, *, + self, + *, request: Union[models.WebhookDto, models.WebhookDtoTypedDict], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -231,15 +254,15 @@ async def create_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.WebhookDto) request = cast(models.WebhookDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/webhooks", base_url=base_url, @@ -251,43 +274,51 @@ async def create_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.WebhookDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.WebhookDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="createWebhookPublic", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="createWebhookPublic", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.WebhookResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def delete( - self, *, + self, + *, id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -304,14 +335,14 @@ def delete( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.DeleteRequest( id=id, ) - + req = self.build_request( method="DELETE", path="/webhooks/{id}", @@ -326,42 +357,46 @@ def delete( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="delete", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="delete", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - if utils.match_response(http_res, "200", "*"): - return None + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.WebhookResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def delete_async( - self, *, + self, + *, id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -378,15 +413,15 @@ async def delete_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.DeleteRequest( id=id, ) - - req = self.build_request( + + req = self.build_request_async( method="DELETE", path="/webhooks/{id}", base_url=base_url, @@ -400,42 +435,46 @@ async def delete_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="delete", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="delete", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - if utils.match_response(http_res, "200", "*"): - return None + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.WebhookResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def update_status( - self, *, + self, + *, id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -452,14 +491,14 @@ def update_status( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.UpdateStatusRequest( id=id, ) - + req = self.build_request( method="PUT", path="/webhooks/{id}", @@ -474,42 +513,46 @@ def update_status( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="updateStatus", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="updateStatus", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - if utils.match_response(http_res, "200", "*"): - return None + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.WebhookResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def update_status_async( - self, *, + self, + *, id: str, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -526,15 +569,15 @@ async def update_status_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + request = models.UpdateStatusRequest( id=id, ) - - req = self.build_request( + + req = self.build_request_async( method="PUT", path="/webhooks/{id}", base_url=base_url, @@ -548,43 +591,49 @@ async def update_status_async( security=self.sdk_configuration.security, timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="updateStatus", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="updateStatus", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - - if utils.match_response(http_res, "200", "*"): - return None + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[models.WebhookResponse]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - def verify_event( - self, *, - request: Union[models.SignatureVerificationDto, models.SignatureVerificationDtoTypedDict], + self, + *, + request: Union[ + models.SignatureVerificationDto, models.SignatureVerificationDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -600,14 +649,14 @@ def verify_event( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.SignatureVerificationDto) request = cast(models.SignatureVerificationDto, request) - + req = self.build_request( method="POST", path="/webhooks/verifyEvent", @@ -620,44 +669,54 @@ def verify_event( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.SignatureVerificationDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.SignatureVerificationDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = self.do_request( - hook_ctx=HookContext(operation_id="verifyEvent", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="verifyEvent", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[Dict[str, Any]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) + content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + http_res_text = utils.stream_to_text(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + ) - - async def verify_event_async( - self, *, - request: Union[models.SignatureVerificationDto, models.SignatureVerificationDtoTypedDict], + self, + *, + request: Union[ + models.SignatureVerificationDto, models.SignatureVerificationDtoTypedDict + ], retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -673,15 +732,15 @@ async def verify_event_async( url_variables = None if timeout_ms is None: timeout_ms = self.sdk_configuration.timeout_ms - + if server_url is not None: base_url = server_url - + if not isinstance(request, BaseModel): request = utils.unmarshal(request, models.SignatureVerificationDto) request = cast(models.SignatureVerificationDto, request) - - req = self.build_request( + + req = self.build_request_async( method="POST", path="/webhooks/verifyEvent", base_url=base_url, @@ -693,37 +752,44 @@ async def verify_event_async( user_agent_header="user-agent", accept_header_value="application/json", security=self.sdk_configuration.security, - get_serialized_body=lambda: utils.serialize_request_body(request, False, False, "json", models.SignatureVerificationDto), + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.SignatureVerificationDto + ), timeout_ms=timeout_ms, ) - + if retries == UNSET: if self.sdk_configuration.retry_config is not UNSET: retries = self.sdk_configuration.retry_config retry_config = None if isinstance(retries, utils.RetryConfig): - retry_config = (retries, [ - "429", - "500", - "502", - "503", - "504" - ]) - + retry_config = (retries, ["429", "500", "502", "503", "504"]) + http_res = await self.do_request_async( - hook_ctx=HookContext(operation_id="verifyEvent", oauth2_scopes=[], security_source=self.sdk_configuration.security), + hook_ctx=HookContext( + operation_id="verifyEvent", + oauth2_scopes=[], + security_source=self.sdk_configuration.security, + ), request=req, - error_status_codes=["4XX","5XX"], - retry_config=retry_config + error_status_codes=["4XX", "5XX"], + retry_config=retry_config, ) - + if utils.match_response(http_res, "201", "application/json"): return utils.unmarshal_json(http_res.text, Optional[Dict[str, Any]]) - if utils.match_response(http_res, ["4XX","5XX"], "*"): - raise models.SDKError("API error occurred", http_res.status_code, http_res.text, http_res) - - content_type = http_res.headers.get("Content-Type") - raise models.SDKError(f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", http_res.status_code, http_res.text, http_res) + if utils.match_response(http_res, ["4XX", "5XX"], "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + "API error occurred", http_res.status_code, http_res_text, http_res + ) - + content_type = http_res.headers.get("Content-Type") + http_res_text = await utils.stream_to_text_async(http_res) + raise models.SDKError( + f"Unexpected response received (code: {http_res.status_code}, type: {content_type})", + http_res.status_code, + http_res_text, + http_res, + )