diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index ce5f7a335..a2ec980f0 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,25 +1,25 @@ lockVersion: 2.0.0 id: f306da52-7172-441d-9f8c-9d055cef9c2a management: - docChecksum: 050df171336a3f72c7d9fa293aee56ef - docVersion: 10.24.47 - speakeasyVersion: 1.788.1 - generationVersion: 2.915.1 - releaseVersion: 0.23.28 - configChecksum: 2b4695aa5815d9391c17229ea798ee80 + docChecksum: 0bb72903b2014147d0580d5dc1adfbf5 + docVersion: 10.28.1 + speakeasyVersion: 1.791.0 + generationVersion: 2.924.0 + releaseVersion: 0.24.0 + configChecksum: bf2f72307121b6a4931521674e0460cc repoURL: https://github.com/apideck-libraries/sdk-csharp.git installationURL: https://github.com/apideck-libraries/sdk-csharp published: true persistentEdits: - generation_id: 1d06aa6a-8ca5-4148-9315-e22a0d52a27f - pristine_commit_hash: 7cf7768a171899c623d44755ce75ec8044abddb9 - pristine_tree_hash: 0aebac00ed99163c5d2b7babcd68fe335218b5a1 + generation_id: 929c234e-9032-4207-b025-a5be39b51c7c + pristine_commit_hash: f8580d292e552b382f76482c7902b9ca9a8392e5 + pristine_tree_hash: 74fa23f7099bcb7373c8be9bef708319b84196bb features: csharp: additionalDependencies: 0.1.0 - additionalProperties: 0.0.1 + additionalProperties: 0.0.2 constsAndDefaults: 0.0.3 - core: 3.15.24 + core: 3.15.25 deprecations: 2.81.2 errors: 1.0.3 flattening: 2.81.3 @@ -35,13 +35,13 @@ features: methodServerURLs: 2.82.2 nameOverrides: 2.81.4 nullables: 0.1.1 - openEnums: 0.1.1 - pagination: 0.2.11 + openEnums: 0.1.3 + pagination: 0.2.12 responseFormat: 0.0.4 retries: 0.0.3 sdkHooks: 0.3.0 typeOverrides: 2.81.1 - unions: 1.1.3 + unions: 1.1.4 trackedFiles: .gitattributes: id: 24139dae6567 @@ -53,8 +53,8 @@ trackedFiles: pristine_git_object: 783cffcf06592652f7f3dc16f70997a931c373cc NUGET.md: id: f4c8a442a6e5 - last_write_checksum: sha1:8f70b3435f1c18af3e00307262be432d5c1f3999 - pristine_git_object: 78b0b64ab8c14345f9d707dde4ca7eecd35d852c + last_write_checksum: sha1:994241692d829812e4552106fdbe2bfb6dc56114 + pristine_git_object: 529716203721d3914a4fe5c9f0dcd0280ec1484d USAGE.md: id: 3aed33ce6e6f last_write_checksum: sha1:08ae02137f97233a3c396af7e1d75453ec7d6d00 @@ -465,8 +465,8 @@ trackedFiles: pristine_git_object: f75a53f49f852a3e31b7c4c495a0456c2654ea20 docs/Models/Components/BillsFilter.md: id: f4b37e6b3691 - last_write_checksum: sha1:ec77ab643b72bacafd4e1dbda403e0d4079d2a53 - pristine_git_object: d0611e34fd136a270c82bd47ab72f4b963527ffa + last_write_checksum: sha1:66e004c561be7eca9374a0fda83709aa1f3f09a6 + pristine_git_object: d3874f87b19b148fd7d20bbbc49ab19213269cdf docs/Models/Components/BillsFilterStatus.md: id: 16a5101052dc last_write_checksum: sha1:90be18907bb6e4dacfb1b7fb6459fbf85aeafde3 @@ -601,8 +601,8 @@ trackedFiles: pristine_git_object: 718d12151353c444a78659556a098f930e4d050e docs/Models/Components/Connection.md: id: 5688c7e8f7e9 - last_write_checksum: sha1:8dca8fe00a9c417020f1a93f908f471a551824a3 - pristine_git_object: a9b53cb748734574665fe76075177881e65bc8a7 + last_write_checksum: sha1:c0b0d282e1be899cc2679df7a8ef1e8f7f4d92b5 + pristine_git_object: 5e179d571f50e068ac4769aac8d1cd495ad5633e docs/Models/Components/ConnectionConfiguration.md: id: b57049cc3d08 last_write_checksum: sha1:225b68fea12ce7928f66c710af03a1a87d6f6811 @@ -621,8 +621,16 @@ trackedFiles: pristine_git_object: a7b1ed46d00245a3438519d373b147a9a2ffa4be docs/Models/Components/ConnectionInput.md: id: b594dbb64ec4 - last_write_checksum: sha1:32d51650c9fc20d681e078df9a305c8ae370ad02 - pristine_git_object: f4bcc26e6bdb08db02f575c0f84e4e778dbb2675 + last_write_checksum: sha1:e73a8f5d4c5cb851079e8e20a9924dbfd91f9758 + pristine_git_object: 07a929950d984c944f25165ffc285e8dabd2efc3 + docs/Models/Components/ConnectionMetadata.md: + id: 4a74e6c2342c + last_write_checksum: sha1:6b304218f5db09e6a246f28c9344c73d1b4eb41f + pristine_git_object: 7aac29a65707986313e3a9e230f86b3e84f5f06d + docs/Models/Components/ConnectionMetadataInput.md: + id: 496e468f6b5c + last_write_checksum: sha1:744b861ea18d14c683d5c1b7aad81df24f346a0e + pristine_git_object: 0aa7d9c9a05d716ffbec41ccfc0691ddfbf27c6e docs/Models/Components/ConnectionState.md: id: e3713da3e6e7 last_write_checksum: sha1:ef9e3157906728dbfbfc2ae9214a414bb79d7ed4 @@ -637,8 +645,8 @@ trackedFiles: pristine_git_object: 3fecb7c1baf599c43440195de52bb080c3c55fb2 docs/Models/Components/Connector.md: id: 5249840e19f2 - last_write_checksum: sha1:7a45b080942daf606168014e34f15e5ad37c276e - pristine_git_object: 22d178c40a7cc3487749e5f09655cef5d9060b67 + last_write_checksum: sha1:c6a6f3e8706719dc5764861cad461c3d1ef72f97 + pristine_git_object: f780485d01fd68de8c465ccb1d64bc54e8680a76 docs/Models/Components/ConnectorAuthType.md: id: b91cf9fa0664 last_write_checksum: sha1:b03f3bfa5e367e8cdc2176aba8e0f3576ca30df5 @@ -659,6 +667,10 @@ trackedFiles: id: f22efecba18f last_write_checksum: sha1:b15c664b19cd6a1bd99971e89564226611308ef9 pristine_git_object: 053569c95be9568d3e9dc305e4af76fce2942115 + docs/Models/Components/ConnectorOverview.md: + id: 4e764c267610 + last_write_checksum: sha1:d31a2a54917c4f59ed3875f4103710a761029de4 + pristine_git_object: 062984b97f4cfe626b47bc3971dcdc0ef1fc2718 docs/Models/Components/ConnectorResource.md: id: 207f6975fdae last_write_checksum: sha1:1bf046aa5a22f94647e1c58b810ce188394977a5 @@ -697,8 +709,8 @@ trackedFiles: pristine_git_object: bf63e8b29283c3b3e9de2ac16dac4c5eaada6999 docs/Models/Components/ConsumerConnection.md: id: 7923dbd5b1c6 - last_write_checksum: sha1:f6dec5b343a8ea8340d46bed257d8b56fdf069fe - pristine_git_object: 6cd8ceae3bc36cd08411b751f85b400d8b415afa + last_write_checksum: sha1:7f02db86bf78e755e7cd001dc359b08c62eb5230 + pristine_git_object: e49531e5901e1546dd61008bed4c52b996f4803a docs/Models/Components/ConsumerMetadata.md: id: f01c56b7b09e last_write_checksum: sha1:6a0f7fad469aa42309cb22efd09550c2e13d1746 @@ -1435,6 +1447,10 @@ trackedFiles: id: 2016be83ec24 last_write_checksum: sha1:bbb6a1c07dd815018ab5e0d2b5443c4511643f45 pristine_git_object: 24228d02bf4cffb30f45ea05c5d9c8125d0e56e6 + docs/Models/Components/Difficulty.md: + id: bfec58f83e0f + last_write_checksum: sha1:c8c76f28021d5749be4eb7db2958a39a9fdd961f + pristine_git_object: 6f142aa82acdecac3b035caaf80e13646d3fada2 docs/Models/Components/Direction.md: id: 864fdc94e239 last_write_checksum: sha1:1e48b6ef19d277f21488a788378c89b5e534078e @@ -1627,6 +1643,10 @@ trackedFiles: id: b8bf00a8ab26 last_write_checksum: sha1:47a84afd1ff107fa5a4dc19ea4528d1de7826623 pristine_git_object: ad94c018f9d8d036b63c2380aa8a2634fac7b3f6 + docs/Models/Components/EnvironmentNotes.md: + id: f290005b122e + last_write_checksum: sha1:d883ff4aa6b2f635e9317a41546d7e8be35821b1 + pristine_git_object: 10fcf3be4365859a6ed213ad53a5ccdb01653636 docs/Models/Components/Error.md: id: 5030f0d6f8a0 last_write_checksum: sha1:7e92765ba3892478194fa26fb32dbe0de3ce6359 @@ -1681,16 +1701,16 @@ trackedFiles: pristine_git_object: 1b6b8561f1ef57b77266ec1c8202f69e14afeb0c docs/Models/Components/ExpenseReport.md: id: f220fce17376 - last_write_checksum: sha1:59654c0eee9d4a95554c4f0edcbd154ffb2cd1d9 - pristine_git_object: d02ab19d7cdc2c85012152bad625aa5106384590 + last_write_checksum: sha1:8eec88c87025c012a26d7b7d3c6799605990c933 + pristine_git_object: b9a729228fec4c9448f03f93bf7f167dbe07656f docs/Models/Components/ExpenseReportEmployee.md: id: 128430f737f2 last_write_checksum: sha1:db579ae9bb271ea4980df1bec8f19086429fa408 pristine_git_object: cd6e36988fb8f1e739549f9b260b1a8353ef7d10 docs/Models/Components/ExpenseReportInput.md: id: ff5d43578b6c - last_write_checksum: sha1:6a4acfd752c7eef7e1a6919bcbfc0e06a115bd2b - pristine_git_object: 01ddae5644240f335993ffd9be365c60658a2076 + last_write_checksum: sha1:d4b29b8885f0e869d9a575fc7997aa8c2fd75450 + pristine_git_object: eed5821f173f51442cfb922c4567e0cc7ccb5cef docs/Models/Components/ExpenseReportLineItem.md: id: 3d8182f5cf5d last_write_checksum: sha1:91f35002a322857bfa23d1cc5cd57e174e430af0 @@ -1739,6 +1759,10 @@ trackedFiles: id: 6e35c8d3d810 last_write_checksum: sha1:88afd0fbad70b7ba4987143db6d9e2324a274c8a pristine_git_object: 6805e7fa3813aff771845df08bb1c0642f35a12d + docs/Models/Components/ExternalGuides.md: + id: 3bae4d98ccaf + last_write_checksum: sha1:de674aab2a117be64c4367faad7434633570c539 + pristine_git_object: a7c5230678c8f5259658c7c28492e4c85adfaab5 docs/Models/Components/FeedStatus.md: id: 38bf35d28f5d last_write_checksum: sha1:c3fdad3156e92471c9462ccb2f7b8c5db4a078e3 @@ -2255,6 +2279,14 @@ trackedFiles: id: 6010e709f49a last_write_checksum: sha1:6761c6a9f5631a47ea2052bf9afce2bf42e0f243 pristine_git_object: 43c3935b3975f77ff1867ef845743b00a2e46830 + docs/Models/Components/GetListResponse.md: + id: cf4149c80eb7 + last_write_checksum: sha1:1561b98be4947ae31f0b13c3927b9a4ba5812504 + pristine_git_object: ec7c8cd7a4340aa56fa9336debb60c955430d4ea + docs/Models/Components/GetListsResponse.md: + id: c2e01561857a + last_write_checksum: sha1:1477a340318c307ce49c03f85449b613a6e9db09 + pristine_git_object: 19d54d0f770843953fb45562531c4e8750737a2d docs/Models/Components/GetLogsResponse.md: id: f28dcf6c99cd last_write_checksum: sha1:7fba98d390ddc420f0b8b6a6dea77a11ee798728 @@ -2823,6 +2855,18 @@ trackedFiles: id: 96c82369ab69 last_write_checksum: sha1:7939f34d3d67cd44cded7ad055ab3f3468b5d7be pristine_git_object: 18d7b07043f89ab9c5fc8644f29330e2ffecc899 + docs/Models/Components/List.md: + id: 6a3a65587639 + last_write_checksum: sha1:4ae80814eeda0cfcdac5445bcfb19042d4462002 + pristine_git_object: 5fd834fc5507a0241298de8e20fa84ac7318af71 + docs/Models/Components/ListType.md: + id: 58f119d98f4d + last_write_checksum: sha1:a589516af33f19e676270d4297567ce82a0f54d2 + pristine_git_object: de1609856dc3ddc9e7791975d1f6d1a5862d912a + docs/Models/Components/ListVisibility.md: + id: 091a1043aca1 + last_write_checksum: sha1:a1c1364f303d5dd3dd06db2e54aa0c2c9f9a2119 + pristine_git_object: 28affff506100b01886fa089bd5ec309b60f3d27 docs/Models/Components/LocationStatus.md: id: 7168dedd84fc last_write_checksum: sha1:abb601dd36286083299badcf3967d48e79db3ed9 @@ -2863,6 +2907,10 @@ trackedFiles: id: f31d15227c9a last_write_checksum: sha1:8cb9e2683c076c9c6fa688c64dc6b64eecda429b pristine_git_object: 965885826f3f5bc66eea8bc0900ebb8d1e914ca7 + docs/Models/Components/Metadata.md: + id: 5b37a8eb1a69 + last_write_checksum: sha1:fcce0c9ad29cb8d8f343316e8dbc5d80ddca486c + pristine_git_object: cd30e75b51e3bcdea36ac00b576992de5273e3b2 docs/Models/Components/Mode.md: id: 5799fab3f7eb last_write_checksum: sha1:4f254b7d4b069814ebc5b1527631085c4ac12b12 @@ -3283,6 +3331,10 @@ trackedFiles: id: e21de9158867 last_write_checksum: sha1:19959b0466b5e7fafb428c920704b03e0f45511f pristine_git_object: 0a3db7ff5dfb2f26f9153b25f3bbcfbb2367e33e + docs/Models/Components/ResponsibilityMatrix.md: + id: 86b64e7bbf17 + last_write_checksum: sha1:5861b7fb2bbb284871abd07b070d22013d7718c0 + pristine_git_object: d68ff073685c9afb634e709d42f69536f5055a69 docs/Models/Components/Salary.md: id: e39a9f7017ad last_write_checksum: sha1:a17445fa9325869efb9c1b01e68fa3f16c494d7f @@ -3443,6 +3495,10 @@ trackedFiles: id: 0a952be63dac last_write_checksum: sha1:1df70d53a4c0e2c1dc019a49e798e36e736eb5c5 pristine_git_object: 5bed90e137d685ab86ccdb4d49427412f7dc4da0 + docs/Models/Components/SupportedResourceCategories.md: + id: 9bc3e59f9738 + last_write_checksum: sha1:bb5b18ba694b7be3ac3b9faf4e90c097f994fafa + pristine_git_object: d0a704812aea9d4ebee9a2a59965cc27edee2258 docs/Models/Components/Target.md: id: 3bb2eba0af6b last_write_checksum: sha1:ebc103add3cab16bc285dfc8b4740437af9ca89b @@ -3909,8 +3965,8 @@ trackedFiles: pristine_git_object: 67297cdd5fa83636e687968feb4db0201853e21a docs/Models/Components/WebhookEventType.md: id: 234a36136da0 - last_write_checksum: sha1:6e0567fb0ed7b00c46d1baf1c606588fd1ba0f96 - pristine_git_object: 895810ddea92ffd347bda3bf2addd87e2982e556 + last_write_checksum: sha1:2adbfcbf8b76e05a5df092789c27fac2152054cd + pristine_git_object: f3d3b32fb2dd75531c2f3d32b15c9127086d364f docs/Models/Components/WebhookSubscription.md: id: f2c87de13dad last_write_checksum: sha1:b06e12fe1b2de792322638adc12526de94056de5 @@ -4037,8 +4093,8 @@ trackedFiles: pristine_git_object: f59c5f5996e47720257176a57d1a9fc35070eb85 docs/Models/Requests/AccountingAttachmentsAllRequest.md: id: ce52f9041861 - last_write_checksum: sha1:2b772f7c88027ddff93fed7c4aed739df95a0092 - pristine_git_object: 174a14994baeba32f9899459905494f079797e88 + last_write_checksum: sha1:aa805c32bee67b674deec2eba39f2f1fdcf8545a + pristine_git_object: d37c2c5c5e629412c8ab0cb29ebdcb41d26cdc43 docs/Models/Requests/AccountingAttachmentsAllResponse.md: id: 2476c6affee4 last_write_checksum: sha1:847dab5c9b3fb00d82e974d45d01ac5813c93ad6 @@ -4253,8 +4309,8 @@ trackedFiles: pristine_git_object: 4fad1bd7aff6d012d0ff6ebafa37ef2e40fb5cb6 docs/Models/Requests/AccountingBillsAllRequest.md: id: 8ee00c224591 - last_write_checksum: sha1:e8730792425c1bec9f431792e40f5763e049542e - pristine_git_object: 93ae545eb68a21b036542d754b11373452f44cbe + last_write_checksum: sha1:118cab770cc456e63762e84fe057c5f19a49c8bd + pristine_git_object: 63f3a993d03fbd7a6b568083ea19f30067908cca docs/Models/Requests/AccountingBillsAllResponse.md: id: dce2709c8717 last_write_checksum: sha1:f7566e7470a3bf6008efb74cab6ee90b1181c561 @@ -4285,8 +4341,8 @@ trackedFiles: pristine_git_object: 911f070ada235e5b4aab8e42cff780a1c9400bf1 docs/Models/Requests/AccountingCategoriesAllRequest.md: id: 928a5d1f47ec - last_write_checksum: sha1:55e8f4f539b0c57511f26342ec84c5dfc7d8edaa - pristine_git_object: 35eb15ccd01bfe257dca535ca17adf978f252e87 + last_write_checksum: sha1:b056f05d7572f44d387bcb25ad80579a8882da70 + pristine_git_object: 605313ab338c59a94950ad8cc9fe135201562dc0 docs/Models/Requests/AccountingCategoriesAllResponse.md: id: aba8a98f593c last_write_checksum: sha1:4c6da19ca011badefbaf2449a2935327bd165b18 @@ -4301,8 +4357,8 @@ trackedFiles: pristine_git_object: 7815e72ab1f24c8a3ae29ab74b299d905e68fae4 docs/Models/Requests/AccountingCompaniesAllRequest.md: id: 8fed5fca0f68 - last_write_checksum: sha1:a508c159fb751d017cd129f07d3b2bd7d31452fa - pristine_git_object: 11a3fc791ad4429f65a7b5776ce742fa5efb0f11 + last_write_checksum: sha1:e9667ea0bfcac00729296398345f9200d6fe49cb + pristine_git_object: 10a1043f1e28b45a6c764c08f24d7ba4b3e6f5b9 docs/Models/Requests/AccountingCompaniesAllResponse.md: id: e2af9831e5e4 last_write_checksum: sha1:970e313182d8a2b6a879b8e6ace48dd883ae01e3 @@ -4405,8 +4461,8 @@ trackedFiles: pristine_git_object: d597ffc736b466f41ec15593854d8c2ddcbada2e docs/Models/Requests/AccountingDepartmentsAllRequest.md: id: 805229f110b4 - last_write_checksum: sha1:9154b28897d41141a0c5b035ffdf7b6bd566a5c3 - pristine_git_object: 4e351a1eb65e412c9010dd18122ac9478d423e0c + last_write_checksum: sha1:c5acee1c3570bca7094d950ba397caa2923987dd + pristine_git_object: 612ee8e136783ee03578d705a51d6de9fe74ff61 docs/Models/Requests/AccountingDepartmentsAllResponse.md: id: 763c0ae4f192 last_write_checksum: sha1:5f2e6454acf4a354593c152e2f578e76b0a9db00 @@ -4445,8 +4501,8 @@ trackedFiles: pristine_git_object: 9aada924b86f8c40b8f67117ced74f6c96cf63b7 docs/Models/Requests/AccountingEmployeesAllRequest.md: id: 86d6dedf65cc - last_write_checksum: sha1:b7444cc8cf6e51f621ebe496367efbefa4d579f5 - pristine_git_object: dddd0f1510c6c53559797cc433c9bf6a1b6cfbf2 + last_write_checksum: sha1:685e7eceb2c003c207de1bdc3a9522aacd3ac638 + pristine_git_object: e8f35616b49899b987eb79e877c1b054c30dc70f docs/Models/Requests/AccountingEmployeesAllResponse.md: id: 89b947dda096 last_write_checksum: sha1:d45410dcc5d44e494e31a26d48b828c3e95631b4 @@ -4485,8 +4541,8 @@ trackedFiles: pristine_git_object: d46d22f8e37d6b3ef2474d00329c756163046a13 docs/Models/Requests/AccountingExpenseCategoriesAllRequest.md: id: 4e2f137828c0 - last_write_checksum: sha1:8358fe8cc92c7ce38059f2274d923d608f0375b7 - pristine_git_object: 28a0f35ef7bfe2d6eb92ca7675ce9d5d5f35b094 + last_write_checksum: sha1:ee368d3303bc491418e9862453e489a5fc1332e8 + pristine_git_object: 5d3826adc930bc61522169f973e42f205e1ec2f2 docs/Models/Requests/AccountingExpenseCategoriesAllResponse.md: id: efa142c0dd4d last_write_checksum: sha1:c3a9af5983afbe26560833d6285a4c2c72fe7c5c @@ -4525,8 +4581,8 @@ trackedFiles: pristine_git_object: 9c1998f7d33b15ca84618e3b37dbc2abeca571be docs/Models/Requests/AccountingExpenseReportsAllRequest.md: id: 57ccd8a1cc9c - last_write_checksum: sha1:84ac18a8de3f06324e226cc418391740abaa7224 - pristine_git_object: 983902e96955dcd18630dacf49022346eccc1400 + last_write_checksum: sha1:7ed449f0c5483d477a788d4fe91cdc9474b17787 + pristine_git_object: 857aa81425942ddea23ae59872f188a5779bc704 docs/Models/Requests/AccountingExpenseReportsAllResponse.md: id: fbc01a6c4c6b last_write_checksum: sha1:85acbb547ea4ebc03b68f8ddf71fc9215ede433b @@ -4565,8 +4621,8 @@ trackedFiles: pristine_git_object: 5b9d73fa21f515ece99842960132d2418922d2f6 docs/Models/Requests/AccountingExpensesAllRequest.md: id: 537826747ad8 - last_write_checksum: sha1:46c89245da3efaa99738a1ca389d032f0fa07f3c - pristine_git_object: 9dc56fa2b6bd60ab762432ba1bf97db5d42ad8c0 + last_write_checksum: sha1:0e4b62236563c5fa7a567cf2a65a951f3a4bac32 + pristine_git_object: 024166bfdcc0c5048d7bec6e14577e4e9b558855 docs/Models/Requests/AccountingExpensesAllResponse.md: id: d74228a8bf75 last_write_checksum: sha1:93c122b5bff0c0e953adde8b6fc04cfc085fa3e6 @@ -4781,8 +4837,8 @@ trackedFiles: pristine_git_object: fc501261a247e31b10c11d466941cd6af082d18a docs/Models/Requests/AccountingLocationsAllRequest.md: id: ec6d465a911c - last_write_checksum: sha1:938517915b958eac84922855d85c48a74256e90e - pristine_git_object: 814f14ee99118c7ee429f1dc89a57c0fe32401fa + last_write_checksum: sha1:08342803249570a161fa631ca1c5b79a30cf88b7 + pristine_git_object: dbcf59b7befb75d98f51b98ac6540e3b5ec5de27 docs/Models/Requests/AccountingLocationsAllResponse.md: id: b3e7f9a8acd1 last_write_checksum: sha1:1eaf92ff275985c7b7d6cd74a96b0ddbfd901a50 @@ -4949,8 +5005,8 @@ trackedFiles: pristine_git_object: d3ccc8340b895e6e6fec176702659fb784667cbf docs/Models/Requests/AccountingQuotesAllRequest.md: id: d33c8c14196d - last_write_checksum: sha1:68450bb7baf206fb3b6674e4981ff4c2c97b3bd6 - pristine_git_object: 6673abb664983b8a90036debf38fdf0947eb7d5a + last_write_checksum: sha1:d8f46f01112edf3c2fce7dc0842a12ae4901ddfc + pristine_git_object: 43d161186b99abcfc10d8b70343baf69cc7b4584 docs/Models/Requests/AccountingQuotesAllResponse.md: id: 64f74e3aa3b4 last_write_checksum: sha1:35a20377531a7562fd58258b45d3966de81eda0c @@ -5029,8 +5085,8 @@ trackedFiles: pristine_git_object: 3a63829cfd0a00bf7e0f6183d48c83d7fe251b44 docs/Models/Requests/AccountingSubsidiariesAllRequest.md: id: 149513c8f908 - last_write_checksum: sha1:48da2fb9066819240d04963e8207da4e06115d3d - pristine_git_object: 5a21854fd0e8a42d64ea5e9f38718c7358500f98 + last_write_checksum: sha1:40a5e2e45e0a7d3f387c9a94abdbd1ab2b6e9480 + pristine_git_object: e3e558e77e646bf3368fb6da998441be3884b8ea docs/Models/Requests/AccountingSubsidiariesAllResponse.md: id: a922620d15ac last_write_checksum: sha1:e07bafa3655f994abfc6ea95a4c6e1b24f2200b5 @@ -5603,6 +5659,22 @@ trackedFiles: id: 6397fb02ac38 last_write_checksum: sha1:ff3067c9156d6fbced3751a791eaa4548eca51f7 pristine_git_object: 4be1b7d7b0b16b0a01fb32f2be02d50c4c2de332 + docs/Models/Requests/CrmListsAllRequest.md: + id: b153eb98a005 + last_write_checksum: sha1:1cdfff8d13fba51252d1a664fe5f0e995e93dca6 + pristine_git_object: 37987db937a6dcbc88a806439d837a5b123603ff + docs/Models/Requests/CrmListsAllResponse.md: + id: 9b5d355936c1 + last_write_checksum: sha1:67166a9ef3fd396d56aa070bf2ce78f06ac1d59e + pristine_git_object: fd0c7912f344d839d1116994bec71c5c5ccd8386 + docs/Models/Requests/CrmListsOneRequest.md: + id: 1d4d7f633107 + last_write_checksum: sha1:cac156a01009682afaa41629414a651f70d966bd + pristine_git_object: 68ef549faf73a4c6b3520260ee15ce8e4968b093 + docs/Models/Requests/CrmListsOneResponse.md: + id: 322109a58d41 + last_write_checksum: sha1:5cb5f88c5416910c1fecd1eb8957b82b7faebeae + pristine_git_object: a77027e1f777c1ee179df494fd0543bddd8bd1ad docs/Models/Requests/CrmNotesAddRequest.md: id: 65b4f46e21b6 last_write_checksum: sha1:1c2e3c1e25028a2e474df7aa11e5af9001137d05 @@ -6797,8 +6869,8 @@ trackedFiles: pristine_git_object: daabe3722b25d22e34c4bd6db8fbacca72fc1653 docs/sdks/attachments/README.md: id: b60e6ecf628b - last_write_checksum: sha1:812714bfc37cef479e9ba55de9b3d4c0abd1994f - pristine_git_object: 52f24310726fb9f4166af714325e2969484d0073 + last_write_checksum: sha1:8d81f60782aae78127eee804752f1d7145fac6b7 + pristine_git_object: aee1d4f44198bd3a4e315891d0b920d032d1e3cd docs/sdks/balancesheet/README.md: id: b360644f6413 last_write_checksum: sha1:8acfa9a72ccac94701a3f08647bda35a06425d38 @@ -6825,8 +6897,8 @@ trackedFiles: pristine_git_object: 7a422063d36f2b501a19c4799b4fff4540e66e6f docs/sdks/categories/README.md: id: 2e253d7225b0 - last_write_checksum: sha1:6fed5ac2cea465c9db7b96778d3dea102629f5b5 - pristine_git_object: efb01c4896a92677795a3a42cb28c1a4f8f750bc + last_write_checksum: sha1:a51ce9b833bd201852e3bc2ff9ca55218d079c54 + pristine_git_object: c7b1bd45127f61d0b951af60248c7c8f7781d785 docs/sdks/collections/README.md: id: 7985e64efccf last_write_checksum: sha1:291df89bbec404ab15c2f6a7e7831033ba529a77 @@ -6849,8 +6921,8 @@ trackedFiles: pristine_git_object: 497cd8c712bb5f1c1219164fc60bedc85a325621 docs/sdks/companies/README.md: id: 67e8a49afa67 - last_write_checksum: sha1:1a52af769f41293617e04c7a6757c69898b3c53f - pristine_git_object: 541d482ee9267fe00ae2866d4aa4fd3310bf65f0 + last_write_checksum: sha1:62aac8e052cb9d52d10686be5a5521731ee69314 + pristine_git_object: 317c2c2548b9a7ead72bf563a031af1cb6ca4af3 docs/sdks/companyinfo/README.md: id: 198b84d5c0c5 last_write_checksum: sha1:71a775aa89d26ecf4c27c822ed7f5e4619615a01 @@ -6869,12 +6941,12 @@ trackedFiles: pristine_git_object: 654b71d7e8225dbdc85b38623c58235b598be88c docs/sdks/connections/README.md: id: 3ef8931411ea - last_write_checksum: sha1:bead8212635fcd91397065c033f617b6f41c7212 - pristine_git_object: 49aeb22e56de143a5a25e562ce1b86afdaef6561 + last_write_checksum: sha1:f1c92cef42e4237446532718eb50c919d7275f23 + pristine_git_object: 17b4526f144435e1dd3a1f7c6e75ef6fab5e849b docs/sdks/connectionsettings/README.md: id: 644e68edbec9 - last_write_checksum: sha1:febb87f0372e4dcee5fe2c374daecbb46b8a398c - pristine_git_object: 18016b639601f52883b1aa9b2793364e5271074a + last_write_checksum: sha1:1c5b5cc55b3596ba685e95f67cc04c18c422e65e + pristine_git_object: 9af077dd0d15d6e7b83ed66de5f5fa8f49a6cec0 docs/sdks/connectordocs/README.md: id: 2dc104c8fb50 last_write_checksum: sha1:99f1b88e267e278f79d43a32db5d5e4927390b76 @@ -6929,8 +7001,8 @@ trackedFiles: pristine_git_object: d0af3685d682355ec814af83c83c6cdda3ba44fb docs/sdks/departments/README.md: id: 12342c54f2cb - last_write_checksum: sha1:e12911c97e45b2187576efae0a69fe4a70715d9d - pristine_git_object: a30c8066bcef0b7eeb356667b83b4d4f1c314d68 + last_write_checksum: sha1:a29355f144c394b224c7243847ae06fe922a754e + pristine_git_object: 85e2552b063813033ee169312a72e36de748dd5f docs/sdks/drivegroups/README.md: id: ec4861fea55c last_write_checksum: sha1:6af6b5baa0d334d729695b9176da2755f3a3ecab @@ -6945,24 +7017,24 @@ trackedFiles: pristine_git_object: 292543ca0cc64befa2ffb048b7b6512f86b7e453 docs/sdks/employees/README.md: id: 3adbd327ce9d - last_write_checksum: sha1:af6472554fdb0ae541ef704c851773609cceb96b - pristine_git_object: ae3ab1d05e8178a1079b3d1ed5823c071daf3afc + last_write_checksum: sha1:b13231a666558118927163fa7027c7e2c68303ae + pristine_git_object: 95bea21a2e474851817ed98b69b72ff698f4e626 docs/sdks/employeeschedules/README.md: id: 9855d4282404 last_write_checksum: sha1:c66892127f989532b51711a1733540bf45c7cb00 pristine_git_object: f81a2e7790ae04921401ea122a0d8ee89d4a041a docs/sdks/expensecategories/README.md: id: b3b488c373df - last_write_checksum: sha1:8a0d4e27392a6db38bc97e0b36be427d5b755b3d - pristine_git_object: b92154d6a220b295b3be6e5fd48741b1a7a3f5d2 + last_write_checksum: sha1:5d201d6673d65d5f5a95d983f895887eceaf2142 + pristine_git_object: 0fdb3be32cc1d7515ab4d1163881fc6cba6d4550 docs/sdks/expensereports/README.md: id: bd1c9bec7278 - last_write_checksum: sha1:921ab614cea571e9ac640387f3a52dda0173bd80 - pristine_git_object: 1c21d0398f1e6104d73cb9f496c7f1c599ee3cc0 + last_write_checksum: sha1:f4de73ae193386570a5431ba0bf0ed4e34d2af30 + pristine_git_object: f9fb971ef24f82a74d7f59d45997e9c22e5ec295 docs/sdks/expenses/README.md: id: 5692d1aab79d - last_write_checksum: sha1:a6fca317f73b956af07f08c357f7e633ef8480a4 - pristine_git_object: 04880628a52d13185aaabdc8fa74719fb6287dad + last_write_checksum: sha1:257ff2e849fa3d06a83ee34ca413a1f8795d52bf + pristine_git_object: 299c89aa0853993af7afe65cec4a39bd8f26f3e5 docs/sdks/files/README.md: id: e576d7a117f0 last_write_checksum: sha1:3e244ebbac9c101b1e7d8b773a015ece7d840062 @@ -6999,10 +7071,14 @@ trackedFiles: id: 5169c83ca089 last_write_checksum: sha1:17d47a042a90998c8a12fcebbc88ca8f08db855e pristine_git_object: 5a72a4f468fa7317139cb09d60f5960a1df6ab63 + docs/sdks/lists/README.md: + id: 2bf91000d730 + last_write_checksum: sha1:6db2cd42e84134905e534db763cc5a1e3b5a4562 + pristine_git_object: 1b1b3db751516c203db33c4dbec0faeaed6389b3 docs/sdks/locations/README.md: id: 18f4bc68d8e9 - last_write_checksum: sha1:4eac03ef0b2a58ca9b6777760288703597ee9cac - pristine_git_object: 41708798a4ef66df536c19f7645f39fdbaa16d9d + last_write_checksum: sha1:b4f94f1be26715212325c4abd3e275b4e587643b + pristine_git_object: fafd41c469fefcf00f2fddb2fa93a01975ae97ea docs/sdks/logs/README.md: id: 5adacd63da21 last_write_checksum: sha1:5b1237d3901981c2e8574a36c6a0ddd989390218 @@ -7057,8 +7133,8 @@ trackedFiles: pristine_git_object: f8f26038630ff9782bf6af57f38462fb3e8023f1 docs/sdks/quotes/README.md: id: 05d5cafc463e - last_write_checksum: sha1:402bdaa72feca40b476c5d93b8379f08f6bf3288 - pristine_git_object: 0c4c113cdd447b5010d18019de146d04bf86a063 + last_write_checksum: sha1:54b565941be3d5b2cffc239d677101b0975d22c0 + pristine_git_object: 686d0fe94f7bb3a1eabdc66cd79befd1627ddbcc docs/sdks/refunds/README.md: id: 451a9838a921 last_write_checksum: sha1:bec9f951b6081d2512c6266fe68df89e82d9e255 @@ -7077,8 +7153,8 @@ trackedFiles: pristine_git_object: f74cc8eec8635083fe9f423d9449bea371331848 docs/sdks/subsidiaries/README.md: id: 96a946f5be0e - last_write_checksum: sha1:0ece69c96d50044cba41ac0ff845eb969de12242 - pristine_git_object: 3322abbf802c321ed9a9e80455b4fd4e8cade4a2 + last_write_checksum: sha1:1815eb0bae88996a1bcb71b27af6e54757bc42c0 + pristine_git_object: c1f1624506dd7048d45312861a05ecf3407bd996 docs/sdks/suppliers/README.md: id: 85867190cd79 last_write_checksum: sha1:e2f663ebd46bf9e22353285d1518d77082b74042 @@ -7165,8 +7241,8 @@ trackedFiles: pristine_git_object: 9bfd8e1e8985e64abc3282c3d3b978303aab1102 src/ApideckUnifySdk/ApideckUnifySdk.csproj: id: 50925e4d8370 - last_write_checksum: sha1:ed70ae531df41903348e61c57354e8d3c7fe81ae - pristine_git_object: 11de4d47e52408c6309d93b1a27f672aad57e7bc + last_write_checksum: sha1:7e6600b32e7740b73c55d57e4b7c36b1330aed4a + pristine_git_object: ccc472a53aa824577b080d264b2296a5d8675f31 src/ApideckUnifySdk/Apis.cs: id: f8e0641f5fd2 last_write_checksum: sha1:de952c817c80230b917d34f75b6256e6e86c05f1 @@ -7185,8 +7261,8 @@ trackedFiles: pristine_git_object: 8e248f5e45f504688341c0eca60874be48f66e85 src/ApideckUnifySdk/Attachments.cs: id: 010f112a77c1 - last_write_checksum: sha1:2a16270a662f51bf1afcb8fa6c9ab5f1a2223113 - pristine_git_object: 46b925abc43ea49a9590b16c7204dc4c9221b5d2 + last_write_checksum: sha1:0db1c4d25378298eaf5ba27efac8497fab571019 + pristine_git_object: 6725572bfd89d93efbf0db0590e419f0b76a4856 src/ApideckUnifySdk/BalanceSheet.cs: id: d2293ec665d9 last_write_checksum: sha1:958a39d6c1525b2dfe4b27f5f4228deeb21e0985 @@ -7213,8 +7289,8 @@ trackedFiles: pristine_git_object: b8fba4a4a394993c5e2499518a199d88ec5ba9b2 src/ApideckUnifySdk/Categories.cs: id: dd505a952132 - last_write_checksum: sha1:eb09c07abd0f9f007e441c6ae9ce1d0e516ec8c9 - pristine_git_object: 7bb4b88b9d95bc5216bcdbc8b8593f99a1dc43f8 + last_write_checksum: sha1:8a56ae2cd7708ae601acc1d8b2a6062b28e4af94 + pristine_git_object: 2341a52d408a84d4cedf65286ee0ca7b1e63c495 src/ApideckUnifySdk/CollectionTags.cs: id: 5f22b323ca6f last_write_checksum: sha1:cfadc6ca6e8e6580c75b94c228856e1248650838 @@ -7237,8 +7313,8 @@ trackedFiles: pristine_git_object: b17b3d04efd56b947c7785d47cfc8a5935abe252 src/ApideckUnifySdk/Companies.cs: id: 212d77e07937 - last_write_checksum: sha1:2750bd2be5b719f178b02bac79d0c42e9122ac2d - pristine_git_object: a2db6f50194c6e18b36f039d992c461a21236ac0 + last_write_checksum: sha1:ecbc0c1dc911199f20273476bee0a7b10a308ef8 + pristine_git_object: cfd65aff4f619417ebc3df829e2b74d3f452fa42 src/ApideckUnifySdk/CompanyInfo.cs: id: 2a34ebcac5dd last_write_checksum: sha1:a57e3b351067e2435297a3b933561640ee5cc551 @@ -7301,8 +7377,8 @@ trackedFiles: pristine_git_object: cfba0d86be3eff8a53c03ec21aede062f54c9b43 src/ApideckUnifySdk/Crm.cs: id: fba6a12985ae - last_write_checksum: sha1:07ab46666fd7a832c16a39e0d2b98e01a1fc4817 - pristine_git_object: 40e80fae2160fb63c6a4759437f3b1fa12403efa + last_write_checksum: sha1:6700964bf60049543cca3156f2822569de86c4a9 + pristine_git_object: 7010afc29795a62b9e4d6dee69eddf2cc82426f2 src/ApideckUnifySdk/CustomFields.cs: id: d301fcc604b5 last_write_checksum: sha1:a47d122ecb6475c4062f59e5acd1e502486a189b @@ -7325,8 +7401,8 @@ trackedFiles: pristine_git_object: 906481c5e61c9943a7268bdb0ba07db4377bf0d2 src/ApideckUnifySdk/Departments.cs: id: 5f4bc68196d7 - last_write_checksum: sha1:0bd597161bbbd45c0ad198b560063fcb6b24a011 - pristine_git_object: f1a29b695c125fe0121ff911253b893a46624bc4 + last_write_checksum: sha1:a4ba629977e9723d4fde15b844c81e1dfe924fae + pristine_git_object: e95679093508f2667de5fe8722a67a0e7ce570b8 src/ApideckUnifySdk/DriveGroups.cs: id: e35274f394c4 last_write_checksum: sha1:2c072e689c748ec372895eaefd3f3340dfae9a3f @@ -7349,20 +7425,20 @@ trackedFiles: pristine_git_object: cb9a011aa5b94e812aa264ee05fe90405b9a5241 src/ApideckUnifySdk/Employees.cs: id: a5e79b7f7e88 - last_write_checksum: sha1:035de1f401622f2c24c504159a05f4fd1068b0f4 - pristine_git_object: cbb28de7995f2a6999e2d425a4def41e15055d5c + last_write_checksum: sha1:850fc546880da5c4044a1f196469b8d6c53c1e5e + pristine_git_object: 3c2c59057bf5bfc89ecaada8c21d66e99bb2a5b3 src/ApideckUnifySdk/ExpenseCategories.cs: id: dd62a99fb709 - last_write_checksum: sha1:824df40735201e564f082a3dc6fae9dc7d928918 - pristine_git_object: 1926f89b3a2fb5b3c1d7f0b8c9d6ca0b5eaf9c3e + last_write_checksum: sha1:160d28bab074e13bb1a71c93617eb2bd70df6bf2 + pristine_git_object: 5b03caa44ee005f0cc1ad6694035e4ad934f16ca src/ApideckUnifySdk/ExpenseReports.cs: id: b630df77bccf - last_write_checksum: sha1:3e1bbbaf3748f288952bb3140704e1e3babcac48 - pristine_git_object: b82484906dc19f324f8e643e5eaefb4560052275 + last_write_checksum: sha1:605bec0f11058cc1bb5453151259ee4b77022228 + pristine_git_object: d1dbc56751e6bf0df3016f26251a6aaa92544795 src/ApideckUnifySdk/Expenses.cs: id: d9d4f49e7e59 - last_write_checksum: sha1:973fc3eb764e86078a657647177de176e40863a3 - pristine_git_object: 19de2855300be37b030f7df0dae922c3f7b8f4cf + last_write_checksum: sha1:cd5e4978e1696df1d97e38aa0b95a8fa8af1f4bd + pristine_git_object: 00ee20a1fd3b5d5fd0040a8a97f0f4a28d0b998b src/ApideckUnifySdk/FileStorage.cs: id: 1dddb8cb8426 last_write_checksum: sha1:6bc36250c08c07dd2c5669f36ad1d6cc01802f84 @@ -7419,10 +7495,14 @@ trackedFiles: id: f3703b0a5f36 last_write_checksum: sha1:a326a376b4ddb0f95eb1d1e1694ec66194ab9049 pristine_git_object: ffef361f0cb3850ad9a825a89747a90abb7f4268 + src/ApideckUnifySdk/Lists.cs: + id: 611523769f9b + last_write_checksum: sha1:f5b1128a41948e860b96541d5b6e254b233123e7 + pristine_git_object: 05f7fd2429307e0c9827ad028d1294dc16a99142 src/ApideckUnifySdk/Locations.cs: id: 8ab8d6468d38 - last_write_checksum: sha1:0b9c0af0fef16dd7613b2d0bd47be99ea0780de9 - pristine_git_object: 6989efdcf20ef5d6419655961e193002c0822ed9 + last_write_checksum: sha1:cf588f4b31a7c18d34ad577f276190c108eebe8c + pristine_git_object: 588addfbb72ede1178c9b9df873d9c8b71790bde src/ApideckUnifySdk/Logs.cs: id: 85a5f2876636 last_write_checksum: sha1:3fa4258a48f97ae0df4b47e43b08e90a1181fb2d @@ -7837,8 +7917,8 @@ trackedFiles: pristine_git_object: ef6d7c2495f998ee164594e2944bd1b9a22f4c9e src/ApideckUnifySdk/Models/Components/BillsFilter.cs: id: 344f121b455c - last_write_checksum: sha1:29ecc6a4564d5d6d80d54235f68539163342abdc - pristine_git_object: b11743602fd314ebcb6cbb06a5bca6cef513c8c7 + last_write_checksum: sha1:ecbee213414f4ddf742aa808a1825ac283134e33 + pristine_git_object: 1390f350d4858ce39a3e80f8955cdf7563214754 src/ApideckUnifySdk/Models/Components/BillsFilterStatus.cs: id: ab97b865ee9c last_write_checksum: sha1:50d66c5702a2bd795adc65419ac27a561d07e5d7 @@ -7857,8 +7937,8 @@ trackedFiles: pristine_git_object: 4e1e9f87fc5a69bad951355a4c2f20c6f8f9a5fd src/ApideckUnifySdk/Models/Components/By.cs: id: c4f2d138e1a7 - last_write_checksum: sha1:2c08f31a8575118513bb2e8c496074d1045a74c6 - pristine_git_object: 7236b51e5d95e71da880cdd016437244a18d6272 + last_write_checksum: sha1:c2587d4aadb23f9556af222d0a934ffd95395581 + pristine_git_object: db91b1da75831dcf04c2b26fe10a94a93db1d419 src/ApideckUnifySdk/Models/Components/Categories.cs: id: c2040500645c last_write_checksum: sha1:46befa43c85d0724ecde2b536d40aa8ff2b7317a @@ -7973,8 +8053,8 @@ trackedFiles: pristine_git_object: 6680c5c05edce752b6de9258d1c23c86e485ffd5 src/ApideckUnifySdk/Models/Components/Connection.cs: id: c4a642ea0f9e - last_write_checksum: sha1:06074d47e8ce8c02a118e25758d3983650027a9d - pristine_git_object: e323c6639e2e85abdd15871bc95bf6f1e7097c27 + last_write_checksum: sha1:0b5dce524513b1922f1aeb0b9603cb8b081cabb3 + pristine_git_object: 3acfe44e7aa0e540b2a7b2bbcdd1228b443785f2 src/ApideckUnifySdk/Models/Components/ConnectionConfiguration.cs: id: 50aa5708b462 last_write_checksum: sha1:52e8229d62e1ce1db810f43d035e37474a83ddfe @@ -7993,8 +8073,16 @@ trackedFiles: pristine_git_object: dcb5bcdc4b8ff03e2df9159574092fc5971d1d29 src/ApideckUnifySdk/Models/Components/ConnectionInput.cs: id: 54094d2d09a9 - last_write_checksum: sha1:52aeb8de5db6718b9410a4ac4a44a73cf5701a90 - pristine_git_object: 1311910aef88cbcdd096c51a1600561724366a07 + last_write_checksum: sha1:314b5b429c34d86b2631e5f0cb53f81b1ea42e67 + pristine_git_object: 6fd06b10ee4db62017ef6167185d086c7664396a + src/ApideckUnifySdk/Models/Components/ConnectionMetadata.cs: + id: 79650dfc55b8 + last_write_checksum: sha1:cad3506070c83a12e6c0b67f48f3cbc93f750100 + pristine_git_object: 8afc8b1ac374af7dd3637a6c600b71df69f269e7 + src/ApideckUnifySdk/Models/Components/ConnectionMetadataInput.cs: + id: b654146e2885 + last_write_checksum: sha1:eafcddfef94bfb32a74b4f211bebac07d6756484 + pristine_git_object: 41c7fbda50c867fcc6efe932e5c6298761b680ce src/ApideckUnifySdk/Models/Components/ConnectionState.cs: id: 346eaa4b93de last_write_checksum: sha1:cae6404b168aded236a92cfa1bdf98d34813326b @@ -8009,8 +8097,8 @@ trackedFiles: pristine_git_object: fc87a5f268152e246936eca0ebd3735e38d7b17d src/ApideckUnifySdk/Models/Components/Connector.cs: id: cdc81434a7e0 - last_write_checksum: sha1:ebd3ee0d1846c104e2bd54f2f7ea55268af0fd69 - pristine_git_object: eda24c0b9f64ec9daa3316e3c4978f7092260337 + last_write_checksum: sha1:d33e5a0f36cbeba1e4fb06f1611659513b8c86ec + pristine_git_object: d529329622ea905efa3f8e77e90986c2dfb81c0c src/ApideckUnifySdk/Models/Components/ConnectorAuthType.cs: id: 2a439d276718 last_write_checksum: sha1:a48e310b7096e299a43bfba72587c68f0171b2be @@ -8031,6 +8119,10 @@ trackedFiles: id: 3520aa3a5079 last_write_checksum: sha1:246e7b8f7ee20a1daf690d0be373468924254353 pristine_git_object: 0fba1cebcda17edd312c66356512565066ac94a8 + src/ApideckUnifySdk/Models/Components/ConnectorOverview.cs: + id: 9c670f1857ec + last_write_checksum: sha1:78b40876c013259f38de1d88cbb5c7efd9c334d9 + pristine_git_object: e9438bd3d45f5e08fa55de1345ed7ba253f6194b src/ApideckUnifySdk/Models/Components/ConnectorResource.cs: id: 4d2f9184973d last_write_checksum: sha1:65f93a1d400b0af19d9cb36b371cea2582d5e1c0 @@ -8069,8 +8161,8 @@ trackedFiles: pristine_git_object: a682f2719b5282505a76f6b5cf01785d6ee1fb2b src/ApideckUnifySdk/Models/Components/ConsumerConnection.cs: id: 2d80934e761f - last_write_checksum: sha1:e57234affb3b9cfe444ca98c80fb04e0fd04166c - pristine_git_object: 310e29ab1ba9da2c2b2e784c6d2e5c56fb4fd364 + last_write_checksum: sha1:15280b65ff451c94aa181fd555807dfd244aa7bc + pristine_git_object: afb154261c3f96330bf524bedd55e09729d450cf src/ApideckUnifySdk/Models/Components/ConsumerMetadata.cs: id: 0dc668b4a758 last_write_checksum: sha1:9b654bcda56c2dc53cef4ce37e6dade7980deaf8 @@ -8807,6 +8899,10 @@ trackedFiles: id: d9e94fde4902 last_write_checksum: sha1:2f2637ab436e07ab879b1116be6b09059f35f3ba pristine_git_object: 2e2092e127f1a177492c2c562cadf836ff71cf82 + src/ApideckUnifySdk/Models/Components/Difficulty.cs: + id: 0fb9ea5e4755 + last_write_checksum: sha1:19350bdadf0297fcac2dd10e4d88691c57213a17 + pristine_git_object: 13900413d451c641eeac7ae56e6f136421defa13 src/ApideckUnifySdk/Models/Components/Direction.cs: id: 186af4c54041 last_write_checksum: sha1:6fe90cbdc6ecff55f1713aca0161d8c76c7c1260 @@ -8999,6 +9095,10 @@ trackedFiles: id: 29dceb29c2df last_write_checksum: sha1:a9d0b2967531c0c11d605add72fe85e9215dcc6f pristine_git_object: 167c9c7b95f36b6fd7065804c57a7835fd9cf395 + src/ApideckUnifySdk/Models/Components/EnvironmentNotes.cs: + id: d474ee0319ec + last_write_checksum: sha1:ea25b91365d2e0a507577ac58bec4722af5fbb39 + pristine_git_object: 97479dc0cb49459b145ead7913f8ec1a1cdf99f6 src/ApideckUnifySdk/Models/Components/Error.cs: id: 2b8ca160d234 last_write_checksum: sha1:5b6edafcfdca9c1383f2107a4e0c37e344071ee4 @@ -9053,16 +9153,16 @@ trackedFiles: pristine_git_object: 5c67e96fce44e2cdbe22864ab63feffe505d934e src/ApideckUnifySdk/Models/Components/ExpenseReport.cs: id: 0511ca35d941 - last_write_checksum: sha1:2b0f0b8b07566ee9d91dc8aefbef5710bf10328b - pristine_git_object: 0a094fc1ad9c5eee894fc1653bf65c5c42605bca + last_write_checksum: sha1:2c452883f22ce6dadb045e4c2b536e72096188da + pristine_git_object: 5a1a9d57f379a1c66c6f87094ec3a5b3d11470a7 src/ApideckUnifySdk/Models/Components/ExpenseReportEmployee.cs: id: 5dbcaba5451e last_write_checksum: sha1:9a948c2baa66dc44abbacb091232c604efbaf8f1 pristine_git_object: 1d5650d22526d4ca429ca357e047b7dd7769e725 src/ApideckUnifySdk/Models/Components/ExpenseReportInput.cs: id: c92aca1ebf82 - last_write_checksum: sha1:6f11cfdf0ca79ff754a2a4f442dc08eca1ea23a3 - pristine_git_object: e04604a9011f0faf867a7162c9800de1554a2f03 + last_write_checksum: sha1:69a6ad27ffd60d01a162e94c965bb5c682888c77 + pristine_git_object: 66ba6a94af2f75debdc0de573c026c86c9ea754d src/ApideckUnifySdk/Models/Components/ExpenseReportLineItem.cs: id: a6b151b8cf1f last_write_checksum: sha1:b5172ca3470050554a38351b2ff18391f5937a25 @@ -9111,6 +9211,10 @@ trackedFiles: id: f33fb85f0376 last_write_checksum: sha1:1e7de4d2be1b0a82823292721139248121cb199e pristine_git_object: 1baeef8f98c1701183a87c307b0c3912e9dc457b + src/ApideckUnifySdk/Models/Components/ExternalGuides.cs: + id: d92104cca564 + last_write_checksum: sha1:bda184704ad151174c984d56314f5aa0867c2433 + pristine_git_object: 86db49a8850c17380b92bbcf4ddf107913e7a26c src/ApideckUnifySdk/Models/Components/FeedStatus.cs: id: 23a4c81faa72 last_write_checksum: sha1:0127d5d3f18ae2228b7a175813e0eb4d67c9d089 @@ -9627,6 +9731,14 @@ trackedFiles: id: f810a198b78c last_write_checksum: sha1:6df7e1417170be0a531034f61a025b6ebe0c9235 pristine_git_object: f81a9f929f0272f0c6dc93ba2a45a43abc76683f + src/ApideckUnifySdk/Models/Components/GetListResponse.cs: + id: 2d1612ac37dd + last_write_checksum: sha1:fdf1e72f1bb78f9cbb8577978620f7cce4d7bc40 + pristine_git_object: b3b16d017b26c453328465e796a34bb98622765b + src/ApideckUnifySdk/Models/Components/GetListsResponse.cs: + id: cb00f2cd99b7 + last_write_checksum: sha1:8d3a019eab7394c4dc0f5ceb7de66dda6f3ba3fa + pristine_git_object: 62c6e0e1699ab2c5fceeba7f14374d899efec4f2 src/ApideckUnifySdk/Models/Components/GetLogsResponse.cs: id: 1520254b0d54 last_write_checksum: sha1:86848a88ba2c327c4d9b5db0e0f111a836ed10e5 @@ -10195,6 +10307,18 @@ trackedFiles: id: 971b200a4f97 last_write_checksum: sha1:61f222b55bb5b924926a9d658ddb090776deca0f pristine_git_object: eb722dfe2c43525930ea8475d93e2d7f7f51bc32 + src/ApideckUnifySdk/Models/Components/List.cs: + id: 46a0947c854e + last_write_checksum: sha1:24466ca9e36e74b66e2a39cea397b25a4ad22946 + pristine_git_object: 620c76238e1e85e8ac60cb50d12baf8eea47e4e1 + src/ApideckUnifySdk/Models/Components/ListType.cs: + id: 41fea7e83ed6 + last_write_checksum: sha1:fb74d00e0c13649203880b0cb7bb66cc66f81824 + pristine_git_object: 1f6a2ae3ad2767d5f6caa1e5a67fb8d1d0534c09 + src/ApideckUnifySdk/Models/Components/ListVisibility.cs: + id: bc090fc4686d + last_write_checksum: sha1:29e00552ab2f19bc7ed7464836eb233f172f645b + pristine_git_object: 6045494e6b2c0a8a387c16b4e53a2cfbddfe76f6 src/ApideckUnifySdk/Models/Components/LocationStatus.cs: id: 385f5237e8df last_write_checksum: sha1:3bbec806da146fedf035ba51c602ffa9cd335e26 @@ -10235,6 +10359,10 @@ trackedFiles: id: c6a99bca1dcc last_write_checksum: sha1:0d92cd6ff6cdcba159416f26dc49396569e7a375 pristine_git_object: d847bac6b80c62be671330e3dcabce53ca2e1af7 + src/ApideckUnifySdk/Models/Components/Metadata.cs: + id: d2e2271318bc + last_write_checksum: sha1:2fb1d9e70b2b1a8674a09a9d410fc060dc938cc5 + pristine_git_object: 49e7d95a7dd92b3adf8158fe801fdae7343c7f7e src/ApideckUnifySdk/Models/Components/Mode.cs: id: 63e0cb5874ac last_write_checksum: sha1:63a0a2838c1edadc5c6f9d69af1cd86cbe367f73 @@ -10655,6 +10783,10 @@ trackedFiles: id: 59245db84beb last_write_checksum: sha1:c8ae1258be43133dff6516b68dff06aaf0283dff pristine_git_object: 45ab731c1b7d4a840b0555b8f438fe08b3497643 + src/ApideckUnifySdk/Models/Components/ResponsibilityMatrix.cs: + id: 4ac67ec77151 + last_write_checksum: sha1:9f534b827e7aa5ae687a9550614604d299c7be75 + pristine_git_object: b00bee0f8029c3e1c9559479c6b51869b4c41e57 src/ApideckUnifySdk/Models/Components/Salary.cs: id: f06e93ecda08 last_write_checksum: sha1:c1d1844bb8dce03dd8c1c2bd583299c186f750ab @@ -10815,6 +10947,10 @@ trackedFiles: id: b56e39e90b95 last_write_checksum: sha1:a896aefc5c7cc48103a6ccf9e73dca44b4129cf8 pristine_git_object: 00f4a0d9b8097fcfe2a46028649b015fed1b46f9 + src/ApideckUnifySdk/Models/Components/SupportedResourceCategories.cs: + id: dbdda817119f + last_write_checksum: sha1:57a3e7e685b6f6c8f5301da06c7b1fe67c568f9c + pristine_git_object: e4fb7b7813b01c28d586328bea545ce9d34267ca src/ApideckUnifySdk/Models/Components/Target.cs: id: d60855cd2efe last_write_checksum: sha1:7b75d4ae7a1512a50ecee1e9280e7eae1ee87abe @@ -11281,8 +11417,8 @@ trackedFiles: pristine_git_object: 9bf3f67d75fc22a7c08eea0c6bd46d785bbb1360 src/ApideckUnifySdk/Models/Components/WebhookEventType.cs: id: a828dc57a2a8 - last_write_checksum: sha1:3dbfa293de8be8a9a430bb75770790071cc2369c - pristine_git_object: f76ce0e429d7194e969623638758b72332485e21 + last_write_checksum: sha1:ce0dad6dcf19b0ace0daf6bbdb23a08f8c6531bc + pristine_git_object: abc6efa0ca4f6a88a8fdf6ecd0264aad0556672a src/ApideckUnifySdk/Models/Components/WebhookSubscription.cs: id: b82126db84a7 last_write_checksum: sha1:4e9f6e8f2d33785ffdea1522966231577607cb15 @@ -11421,8 +11557,8 @@ trackedFiles: pristine_git_object: 1c71445cf97042e8e0348362ca09ce18d763e3b2 src/ApideckUnifySdk/Models/Requests/AccountingAttachmentsAllRequest.cs: id: a5b01565ee85 - last_write_checksum: sha1:3261d114f140816da15cbc2631b59aab0681701b - pristine_git_object: a29e47d97d4e971276bc9b931b39174722a2da63 + last_write_checksum: sha1:94e6a94e716c294fff5882da888a3c592501971e + pristine_git_object: 9dcd10cde5f48989c6306652755d7a498725ed40 src/ApideckUnifySdk/Models/Requests/AccountingAttachmentsAllResponse.cs: id: 845497bded67 last_write_checksum: sha1:6072a13d784df175086998f1a53210ab99c0742a @@ -11669,8 +11805,8 @@ trackedFiles: pristine_git_object: 95ea49badb322b59e6e765cd45c67321dceb685d src/ApideckUnifySdk/Models/Requests/AccountingCategoriesAllRequest.cs: id: 20310b3afd28 - last_write_checksum: sha1:72f0b3e12956a551b370155babd0353a15ff8618 - pristine_git_object: 0c0809259f33182ecd9bd81ef9f07ee0bb720170 + last_write_checksum: sha1:912e8f93543202f9c06f58bdfbe0a22163ba8d91 + pristine_git_object: 7df1a1f77ef04f42311c755def8d7a5b4496b1f5 src/ApideckUnifySdk/Models/Requests/AccountingCategoriesAllResponse.cs: id: 920bbef32eae last_write_checksum: sha1:fa6627897516c89ad7364d8e1a6627ae95c9c7b0 @@ -11685,8 +11821,8 @@ trackedFiles: pristine_git_object: d522fd826b3e9cddef9dd513a7cfad4a8a875482 src/ApideckUnifySdk/Models/Requests/AccountingCompaniesAllRequest.cs: id: 1ad72f0a38da - last_write_checksum: sha1:4744a3944d0334132432d297c6f9c8bdee9d8930 - pristine_git_object: 03b1e418bdc09c75d36db0c0eb2829f159df1425 + last_write_checksum: sha1:1819969e384074482a3b7e33a9cba9aa002b023a + pristine_git_object: 4cebca6a1753d10564321711e916a20fffd473ce src/ApideckUnifySdk/Models/Requests/AccountingCompaniesAllResponse.cs: id: 35c5c551bb80 last_write_checksum: sha1:7d5bc1fb109c7fd374ddde58c8b0602e897f1cbf @@ -11789,8 +11925,8 @@ trackedFiles: pristine_git_object: 4e4bfab3db80462b6c7bae67074e4081580369b2 src/ApideckUnifySdk/Models/Requests/AccountingDepartmentsAllRequest.cs: id: c396e0b0fa06 - last_write_checksum: sha1:c52f025a9693da10c0ec6575e489176a144e07e2 - pristine_git_object: 0c039655ce7d6a49c8e86248e5d2aea09f307d3f + last_write_checksum: sha1:853b69ddcaa79944834ba6df7ddd1ad4020fcb13 + pristine_git_object: 345446949fcf2bc189708535d9c5b266b51357df src/ApideckUnifySdk/Models/Requests/AccountingDepartmentsAllResponse.cs: id: d4f527785862 last_write_checksum: sha1:de6ed66c7b6795a26aa9ecdbd7e456e97e337be4 @@ -11829,8 +11965,8 @@ trackedFiles: pristine_git_object: b1084f075d6cbf0f6373a54c0fc66a14b3d51959 src/ApideckUnifySdk/Models/Requests/AccountingEmployeesAllRequest.cs: id: dc2e2c2279b8 - last_write_checksum: sha1:600b23c14be6318e200aa752f07311917ea40c74 - pristine_git_object: a2110f84ea1fe25c6563b2aea9843057f0f09c51 + last_write_checksum: sha1:ab34c5d0100dffac4a5ca4258ecb9aed6dc38743 + pristine_git_object: 9796ac1e8f31451b27e67e6cb137b5348b715eca src/ApideckUnifySdk/Models/Requests/AccountingEmployeesAllResponse.cs: id: 03d0c6e3db65 last_write_checksum: sha1:97dd4970bafecfc4e4dbfe0e0d7272cd73780f9b @@ -11869,8 +12005,8 @@ trackedFiles: pristine_git_object: 50e982e24a66ddda1427d3c9776836dc86c0b9c6 src/ApideckUnifySdk/Models/Requests/AccountingExpenseCategoriesAllRequest.cs: id: 668c594c66e7 - last_write_checksum: sha1:b31ec227182eb88b468803a2a86e5692238eb6a7 - pristine_git_object: d92fb3a3c57548b4e6a9c55544c115987c64252f + last_write_checksum: sha1:53b826679a3a308f96cdbed5beb7680d1a46f8d6 + pristine_git_object: d9ba8cb4d4e6b300d44caae9cda3943e7455fe2a src/ApideckUnifySdk/Models/Requests/AccountingExpenseCategoriesAllResponse.cs: id: 7f2d1368239a last_write_checksum: sha1:8598b81b0ad23436924c9b8df5f2a410b69f98b0 @@ -11909,8 +12045,8 @@ trackedFiles: pristine_git_object: 889675b1aba6cb771be7288b8632efec86b8546c src/ApideckUnifySdk/Models/Requests/AccountingExpenseReportsAllRequest.cs: id: c1037baafd2d - last_write_checksum: sha1:08dcffce6842abb638b0bfce02763bbcae999852 - pristine_git_object: fe2ca46040e65b49715bdab050f451748dec5615 + last_write_checksum: sha1:6901722ca1905e7fa429ea01ecc3f54b5fbc2346 + pristine_git_object: aadf94f1711336f6ff5840ac6ddb913e3e6372b5 src/ApideckUnifySdk/Models/Requests/AccountingExpenseReportsAllResponse.cs: id: 654b5542f9c5 last_write_checksum: sha1:c0afaa1473546183629ebee54fee4b94723c989a @@ -11949,8 +12085,8 @@ trackedFiles: pristine_git_object: ae38cd6256a12a2c94c1b869fd323249a2139510 src/ApideckUnifySdk/Models/Requests/AccountingExpensesAllRequest.cs: id: 0fdebd5cbd15 - last_write_checksum: sha1:c21de85d83250e5db9cc9234e35a5bf3fa4cedcb - pristine_git_object: a659c7131fc461f45da3d6a9f4715cf66dca96c0 + last_write_checksum: sha1:505b7648a33d7aeb5c7ae100d95c4fd252d0ad8b + pristine_git_object: 66ed16cf85b0ff795ca2937817adbdf711473c3f src/ApideckUnifySdk/Models/Requests/AccountingExpensesAllResponse.cs: id: 703570dedfe7 last_write_checksum: sha1:230fe192380d9da97d35313b64385f5c110feb3e @@ -12165,8 +12301,8 @@ trackedFiles: pristine_git_object: efe4d217532ede72072220e11ab19baf96b46f88 src/ApideckUnifySdk/Models/Requests/AccountingLocationsAllRequest.cs: id: e21052c243f1 - last_write_checksum: sha1:ea0d479c6e10c2e68caea0cc55322a2a8d799b92 - pristine_git_object: daec69af33fb0e6f36596b48d48bd0e1dd57750a + last_write_checksum: sha1:c6a5737a90d0eede68671e30f2f0cac4ebc83366 + pristine_git_object: 30b1b1c10aeb4b51507b51848baf165bca0ea732 src/ApideckUnifySdk/Models/Requests/AccountingLocationsAllResponse.cs: id: 7354e7cd9d52 last_write_checksum: sha1:137c48c5dec02fdb4ce7ed5deba4ef56ef3cb4ce @@ -12333,8 +12469,8 @@ trackedFiles: pristine_git_object: 5bb01a023bff6bdf4a7f7a74a9d7a0f88617b6b8 src/ApideckUnifySdk/Models/Requests/AccountingQuotesAllRequest.cs: id: ed580f6cfef4 - last_write_checksum: sha1:24608f23d486059a30bdccadacaf0f44174328f2 - pristine_git_object: fc771170edc67e316b3eed507fde717bf8df13e5 + last_write_checksum: sha1:1dfe83b92c49502975f102a7d2e3039d6d577e52 + pristine_git_object: a774dec5b03e079478e55e26c977baf70280fbf5 src/ApideckUnifySdk/Models/Requests/AccountingQuotesAllResponse.cs: id: 0b78a4cd6649 last_write_checksum: sha1:c7e87dc0cea5c847e9d143315ffbf9d0139ba2bf @@ -12413,8 +12549,8 @@ trackedFiles: pristine_git_object: 196b9533cb2c00515de48850573799ef5851e640 src/ApideckUnifySdk/Models/Requests/AccountingSubsidiariesAllRequest.cs: id: ae1d3454fc23 - last_write_checksum: sha1:c81110b41dceb895ec1f5571f2fa6020ece07b28 - pristine_git_object: eddd8f2e99b475eaf5d84fd501ee16cded2dcc7b + last_write_checksum: sha1:aca75496020100292b5439009240ce6e161e0125 + pristine_git_object: ed02fb4a8e331c9465ff8c32016ad0f087bfb347 src/ApideckUnifySdk/Models/Requests/AccountingSubsidiariesAllResponse.cs: id: c1ab9b155da7 last_write_checksum: sha1:750e7a6c0e5ec0709081133616b3fb4876769cb5 @@ -12987,6 +13123,22 @@ trackedFiles: id: 0fe6e4e48582 last_write_checksum: sha1:e73b2ea661ee2a848f54ceefdefbdd35df1a634a pristine_git_object: 907d00b7055fbdfa69f7eb6f994441d74a0b198c + src/ApideckUnifySdk/Models/Requests/CrmListsAllRequest.cs: + id: e7426993d637 + last_write_checksum: sha1:a10c161e81c696b0d135e018e88cbfe60716b07a + pristine_git_object: e3758dcf37dacdfffe2c7341c7eba3a3317fc881 + src/ApideckUnifySdk/Models/Requests/CrmListsAllResponse.cs: + id: 58d6ff258a99 + last_write_checksum: sha1:f8c1fb79c95e2ca7fe73e93fb3fc06ed0ca09d0f + pristine_git_object: baac45e7f870f8a663f420a2fa7a3f3b95e4e2aa + src/ApideckUnifySdk/Models/Requests/CrmListsOneRequest.cs: + id: 955f974f809a + last_write_checksum: sha1:bd0e78f5fa938080ab7097e73c4de8a6c6d8d0af + pristine_git_object: d3c2e941d70baf288d4cdb48e40da35e0cfe4839 + src/ApideckUnifySdk/Models/Requests/CrmListsOneResponse.cs: + id: d6cbab503a60 + last_write_checksum: sha1:4e621a2cf400fbcce98b3035b044e315f0f2eb5b + pristine_git_object: 9a3eafe7849980b34ff6c0302bfa8a299d8e42a2 src/ApideckUnifySdk/Models/Requests/CrmNotesAddRequest.cs: id: 1028fcc7802e last_write_checksum: sha1:86d17a2a3a8717dd54e9742679c662b49826772e @@ -14173,16 +14325,16 @@ trackedFiles: pristine_git_object: 4f93e459a755102ae3a6aacc26a0a10060d4c2d0 src/ApideckUnifySdk/Quotes.cs: id: e83134b7b57f - last_write_checksum: sha1:8ca74ddbfe3c7b3db8155991528db10f693116c4 - pristine_git_object: c7cf9b94b3dbdd4535c55128221d6cf3d7dbfa8a + last_write_checksum: sha1:2cace81504962f6d27e63e9d87ccea09b693488a + pristine_git_object: 99644ec29c39527f060946899a5685e2b4c654dc src/ApideckUnifySdk/Refunds.cs: id: ee0fb8a32b55 last_write_checksum: sha1:5e44b6284ec1322756b59f6c5babbd2f387bd3bd pristine_git_object: a58cde42504454e61d9e3212ed7ad887d4ea3b7f src/ApideckUnifySdk/SDKConfig.cs: id: d0c59f3600e4 - last_write_checksum: sha1:7c9d1ff8131fdfe4f40a0c26fd14e53710bedc42 - pristine_git_object: 09ce374fa62deb47c133a02f9c1e89db8392a86a + last_write_checksum: sha1:e112dee3c7154a71759812e41c8d55ca1f38d6d5 + pristine_git_object: 062c4cdfa61472516edf04f817fef03d1cc26a74 src/ApideckUnifySdk/Sessions.cs: id: fb973fcf3bd7 last_write_checksum: sha1:f7a3fe9a8d0b8a3a6925f5b789a14d260db5e68e @@ -14201,8 +14353,8 @@ trackedFiles: pristine_git_object: 5779d44e10e83276e5531690328f98f54c33e2ab src/ApideckUnifySdk/Subsidiaries.cs: id: b8691b14c6a8 - last_write_checksum: sha1:43901808faae127ee6149d70eecc414fbdfbdabc - pristine_git_object: 5fd95da74b686331e6a03343bc99a50cee00610d + last_write_checksum: sha1:0675e4742ccc9db2d8b4fe7016ffbd4e1376634b + pristine_git_object: 032649ea74c9404801a64061d76dac3aa5de018d src/ApideckUnifySdk/Suppliers.cs: id: d5623d564bba last_write_checksum: sha1:e4960b8f19d480a218d284eabcb5bf02db12e68e @@ -14237,8 +14389,8 @@ trackedFiles: pristine_git_object: 48bf1619cd6645885f6b21de93f53a6192babc9d src/ApideckUnifySdk/Utils/Constants.cs: id: c02a6c05b62d - last_write_checksum: sha1:3b35f4c7c6c55484638eee5b3d2127ae391b4ecc - pristine_git_object: b2a4283d49e81f64095d0e81f79063e689daea7f + last_write_checksum: sha1:739ea87f01ceb1a7c0512561b962e72fb601f6fa + pristine_git_object: 1394eac0346b7d9f712e733ae105a6986f2d7586 src/ApideckUnifySdk/Utils/DecimalStrConverter.cs: id: 9fefc3eba201 last_write_checksum: sha1:3b6ec91d9f3ee80496be6181b9b377412a86a3ea @@ -14624,7 +14776,7 @@ examples: query: raw: false limit: 20 - filter: {"id_since": "1", "updated_since": "2020-09-30T07:43:32.000Z", "status": "paid"} + filter: {"id_since": "1", "updated_since": "2020-09-30T07:43:32.000Z", "billed_since": "2020-09-30", "due_since": "2020-09-30", "status": "paid"} sort: {"by": "updated_at", "direction": "desc"} pass_through: {"search": "San Francisco"} fields: "id,updated_at" @@ -17485,6 +17637,7 @@ examples: raw: false limit: 20 fields: "id,updated_at" + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -17753,6 +17906,7 @@ examples: limit: 20 fields: "id,updated_at" filter: {"subsidiary": "1"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -18021,6 +18175,7 @@ examples: limit: 20 fields: "id,updated_at" filter: {"subsidiary": "1"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -18291,6 +18446,7 @@ examples: raw: false limit: 20 fields: "id,updated_at" + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -19135,6 +19291,7 @@ examples: raw: false limit: 20 filter: {"updated_since": "2020-09-30T07:43:32.000Z", "status": "draft", "type": "expense"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -27356,7 +27513,7 @@ examples: x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" responses: "200": - application/json: {"status_code": 200, "status": "OK", "data": {"id": "crm+salesforce", "name": "Salesforce", "description": "A description", "icon_url": "https://res.cloudinary.com/apideck/image/upload/v1529456047/catalog/salesforce/icon128x128.png", "logo_url": "https://c1.sfdcstatic.com/content/dam/web/en_us/www/images/home/logo-salesforce-m.svg", "website_url": "https://www.salesforce.com", "signup_url": "https://www.salesforce.com/signup", "partner_signup_url": "https://www.salesforce.com/partners", "auth_type": "oauth2", "auth_only": true, "blind_mapped": true, "oauth_grant_type": "authorization_code", "oauth_credentials_source": "integration", "oauth_scopes": [{"id": "contacts:all", "label": "Read/write on the Contacts resource", "default_apis": ["crm"]}], "custom_scopes": true, "has_sandbox_credentials": true, "settings": [{"id": "pipeline_id", "label": "Pipeline", "type": "select"}], "service_id": "close", "unified_apis": [{"id": "crm", "name": "File Storage API", "auth_only": true, "oauth_scopes": [{"id": "contacts:all", "label": "Read/write on the Contacts resource"}], "supported_resources": [{"id": "companies", "name": "Companies", "downstream_id": "accounts", "downstream_name": "Accounts"}], "downstream_unsupported_resources": ["companies"], "supported_events": [{"event_type": "employee.created", "event_source": "native", "downstream_event_type": "person_created", "resources": ["companies"], "entity_type": "employee"}]}], "supported_resources": [{"id": "companies", "name": "Companies", "downstream_id": "accounts", "downstream_name": "Accounts"}], "configurable_resources": ["leads", "companies"], "supported_events": [{"event_type": "employee.created", "event_source": "native", "downstream_event_type": "person_created", "resources": ["companies"], "entity_type": "employee"}], "webhook_support": {"mode": "native", "subscription_level": "integration", "managed_via": "api"}, "schema_support": {"supported": true}, "docs": [{"id": "12345", "name": "connection", "url": "https://unify.apideck.com/connector/connectors/workday/docs/consumer+connection"}]}, "meta": {"items_on_page": 50, "cursors": {"previous": "em9oby1jcm06OnBhZ2U6OjE=", "current": "em9oby1jcm06OnBhZ2U6OjI=", "next": "em9oby1jcm06OnBhZ2U6OjM="}, "total_count": 1, "warnings": [{"type": "downstream_request_failed", "status_code": 429, "operation": "getManager"}]}, "links": {"previous": "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjE%3D", "current": "https://unify.apideck.com/crm/companies", "next": "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjM"}} + application/json: {"status_code": 200, "status": "OK", "data": {"id": "crm+salesforce", "name": "Salesforce", "description": "A description", "icon_url": "https://res.cloudinary.com/apideck/image/upload/v1529456047/catalog/salesforce/icon128x128.png", "logo_url": "https://c1.sfdcstatic.com/content/dam/web/en_us/www/images/home/logo-salesforce-m.svg", "website_url": "https://www.salesforce.com", "signup_url": "https://www.salesforce.com/signup", "partner_signup_url": "https://www.salesforce.com/partners", "auth_type": "oauth2", "auth_only": true, "blind_mapped": true, "oauth_grant_type": "authorization_code", "oauth_credentials_source": "integration", "oauth_scopes": [{"id": "contacts:all", "label": "Read/write on the Contacts resource", "default_apis": ["crm"]}], "custom_scopes": true, "has_sandbox_credentials": true, "settings": [{"id": "pipeline_id", "label": "Pipeline", "type": "select"}], "service_id": "close", "unified_apis": [{"id": "crm", "name": "File Storage API", "auth_only": true, "oauth_scopes": [{"id": "contacts:all", "label": "Read/write on the Contacts resource"}], "supported_resources": [{"id": "companies", "name": "Companies", "downstream_id": "accounts", "downstream_name": "Accounts"}], "downstream_unsupported_resources": ["companies"], "supported_events": [{"event_type": "employee.created", "event_source": "native", "downstream_event_type": "person_created", "resources": ["companies"], "entity_type": "employee"}]}], "supported_resources": [{"id": "companies", "name": "Companies", "downstream_id": "accounts", "downstream_name": "Accounts"}], "configurable_resources": ["leads", "companies"], "supported_events": [{"event_type": "employee.created", "event_source": "native", "downstream_event_type": "person_created", "resources": ["companies"], "entity_type": "employee"}], "webhook_support": {"mode": "native", "subscription_level": "integration", "managed_via": "api"}, "schema_support": {"supported": true}, "docs": [{"id": "12345", "name": "connection", "url": "https://unify.apideck.com/connector/connectors/workday/docs/consumer+connection"}], "overview": {"beta": false, "demo": false, "difficulty": "moderate", "difficulty_reason": "Self-Service Signup + App Review Required", "partnership_required": true, "apideck_credentials_available": true, "account_type_required": "", "sandbox_available": true, "consumer_access_level": ""}}, "meta": {"items_on_page": 50, "cursors": {"previous": "em9oby1jcm06OnBhZ2U6OjE=", "current": "em9oby1jcm06OnBhZ2U6OjI=", "next": "em9oby1jcm06OnBhZ2U6OjM="}, "total_count": 1, "warnings": [{"type": "downstream_request_failed", "status_code": 429, "operation": "getManager"}]}, "links": {"previous": "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjE%3D", "current": "https://unify.apideck.com/crm/companies", "next": "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjM"}} "401": application/json: {"status_code": 401, "error": "Unauthorized", "type_name": "UnauthorizedError", "message": "Unauthorized Request", "detail": "Missing authentication", "ref": "https://developers.apideck.com/errors#unauthorizederror"} "402": @@ -29350,6 +29507,7 @@ examples: limit: 20 fields: "id,updated_at" filter: {"type": "expense"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -29406,6 +29564,7 @@ examples: raw: false limit: 20 filter: {"updated_since": "2020-09-30T07:43:32.000Z", "created_since": "2020-09-30T07:43:32.000Z", "number": "OIT00546"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -30029,6 +30188,7 @@ examples: limit: 20 fields: "id,updated_at" filter: {"updated_since": "2020-09-30T07:43:32.000Z", "status": "active"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -30163,6 +30323,7 @@ examples: limit: 20 fields: "id,updated_at" filter: {"updated_since": "2020-09-30T07:43:32.000Z", "status": "active"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -30297,6 +30458,7 @@ examples: limit: 20 fields: "id,updated_at" filter: {"updated_since": "2020-09-30T07:43:32.000Z", "status": "submitted"} + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -30326,7 +30488,7 @@ examples: x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" x-apideck-service-id: "salesforce" requestBody: - application/json: {"display_id": "123456", "number": "ER-001", "title": "Q1 Business Travel", "employee": {"id": "12345", "display_name": "John Doe"}, "status": "submitted", "transaction_date": "2021-05-01T12:00:00.000Z", "posting_date": "2024-06-01", "due_date": "2024-06-15", "currency": "USD", "currency_rate": 0.69, "sub_total": 250, "total_tax": 25, "total_amount": 1250.75, "reimbursable_amount": 1100, "memo": "Business travel expenses for Q1 client meetings", "department": {"display_id": "123456", "name": "Acme Inc."}, "location": {"id": "123456", "display_id": "123456", "name": "New York Office"}, "account": null, "accounting_period": {"id": "12345", "name": "Q1 2024"}, "line_items": [], "subsidiary": {"display_id": "123456", "name": "Acme Inc."}, "tracking_categories": [{"id": "123456", "code": "100", "name": "New York", "parent_id": "123456", "parent_name": "New York"}], "tax_inclusive": true, "approved_by": {"id": "12345", "display_name": "Jane Smith"}, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "row_version": "1-12345", "pass_through": [{"service_id": "", "extend_paths": [{"path": "$.nested.property", "value": {"TaxClassificationRef": {"value": "EUC-99990201-V1-00020000"}}}]}]} + application/json: {"display_id": "123456", "number": "ER-001", "title": "Q1 Business Travel", "employee": {"id": "12345", "display_name": "John Doe"}, "status": "submitted", "transaction_date": "2021-05-01T12:00:00.000Z", "posting_date": "2024-06-01", "due_date": "2024-06-15", "currency": "USD", "currency_rate": 0.69, "sub_total": 250, "total_tax": 25, "total_amount": 1250.75, "reimbursable_amount": 1100, "memo": "Business travel expenses for Q1 client meetings", "department": {"display_id": "123456", "name": "Acme Inc."}, "location": {"id": "123456", "display_id": "123456", "name": "New York Office"}, "account": null, "accounting_period": {"id": "12345", "name": "Q1 2024"}, "line_items": [], "reference": "INV-2024-001", "subsidiary": {"display_id": "123456", "name": "Acme Inc."}, "tracking_categories": [{"id": "123456", "code": "100", "name": "New York", "parent_id": "123456", "parent_name": "New York"}], "tax_inclusive": true, "approved_by": {"id": "12345", "display_name": "Jane Smith"}, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "row_version": "1-12345", "pass_through": [{"service_id": "", "extend_paths": [{"path": "$.nested.property", "value": {"TaxClassificationRef": {"value": "EUC-99990201-V1-00020000"}}}]}]} responses: "201": application/json: {"status_code": 200, "status": "OK", "service": "netsuite", "resource": "ExpenseReports", "operation": "add", "data": {"id": "12345"}} @@ -30356,7 +30518,7 @@ examples: x-apideck-service-id: "salesforce" responses: "200": - application/json: {"status_code": 200, "status": "OK", "service": "netsuite", "resource": "ExpenseReports", "operation": "one", "data": {"id": "12345", "display_id": "123456", "number": "ER-001", "title": "Q1 Business Travel", "employee": {"id": "12345", "display_name": "John Doe"}, "status": "submitted", "transaction_date": "2021-05-01T12:00:00.000Z", "posting_date": "2024-06-01", "due_date": "2024-06-15", "currency": "USD", "currency_rate": 0.69, "sub_total": 250, "total_tax": 25, "total_amount": 1250.75, "reimbursable_amount": 1100, "memo": "Business travel expenses for Q1 client meetings", "department": {"id": "12345", "display_id": "123456", "name": "Acme Inc.", "downstream_id": "12345"}, "location": {"id": "123456", "display_id": "123456", "name": "New York Office", "downstream_id": "12345"}, "account": {"id": "123456", "name": "Bank account", "nominal_code": "N091", "code": "453", "parent_id": "123456", "display_id": "123456"}, "accounting_period": {"id": "12345", "name": "Q1 2024"}, "line_items": [{"id": "12345", "line_number": 1, "expense_category": {"id": "12345", "downstream_id": "12345", "display_id": "Airfare", "name": "Airfare"}, "account": {"id": "123456", "name": "Bank account", "nominal_code": "N091", "code": "453", "parent_id": "123456", "display_id": "123456"}, "description": "Flight to New York", "quantity": 1, "unit_price": 27500.5, "amount": 275, "tax_rate": {"id": "123456", "code": "N-T", "name": "GST on Purchases", "rate": 10}, "tax_amount": 27.5, "total_amount": 302.5, "transaction_date": "2024-05-15", "billable": true, "reimbursable": true, "customer": {"id": "12345", "display_id": "CUST00101", "display_name": "Windsurf Shop", "company_name": "The boring company", "email": "boring@boring.com"}, "department": {"id": "12345", "display_id": "123456", "name": "Acme Inc.", "downstream_id": "12345"}, "location": null, "tracking_categories": [{"id": "123456", "code": "100", "name": "New York", "parent_id": "123456", "parent_name": "New York"}], "receipt_url": "https://example.com/receipts/123.pdf", "currency": "USD", "updated_by": "12345", "created_by": "12345", "updated_at": "2020-09-30T07:43:32.000Z", "created_at": "2020-09-30T07:43:32.000Z"}], "subsidiary": {"id": "12345", "display_id": "123456", "name": "Acme Inc."}, "tracking_categories": [{"id": "123456", "code": "100", "name": "New York", "parent_id": "123456", "parent_name": "New York"}], "tax_inclusive": true, "approved_by": {"id": "12345", "display_name": "Jane Smith"}, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "row_version": "1-12345", "updated_by": "12345", "created_by": "12345", "updated_at": "2020-09-30T07:43:32.000Z", "created_at": "2020-09-30T07:43:32.000Z", "pass_through": [{"service_id": "", "extend_paths": [{"path": "$.nested.property", "value": {"TaxClassificationRef": {"value": "EUC-99990201-V1-00020000"}}}]}]}, "meta": {"items_on_page": 50, "cursors": {"previous": "em9oby1jcm06OnBhZ2U6OjE=", "current": "em9oby1jcm06OnBhZ2U6OjI=", "next": "em9oby1jcm06OnBhZ2U6OjM="}, "total_count": 1, "warnings": [{"type": "downstream_request_failed", "status_code": 429, "operation": "getManager"}]}} + application/json: {"status_code": 200, "status": "OK", "service": "netsuite", "resource": "ExpenseReports", "operation": "one", "data": {"id": "12345", "display_id": "123456", "number": "ER-001", "title": "Q1 Business Travel", "employee": {"id": "12345", "display_name": "John Doe"}, "status": "submitted", "transaction_date": "2021-05-01T12:00:00.000Z", "posting_date": "2024-06-01", "due_date": "2024-06-15", "currency": "USD", "currency_rate": 0.69, "sub_total": 250, "total_tax": 25, "total_amount": 1250.75, "reimbursable_amount": 1100, "memo": "Business travel expenses for Q1 client meetings", "department": {"id": "12345", "display_id": "123456", "name": "Acme Inc.", "downstream_id": "12345"}, "location": {"id": "123456", "display_id": "123456", "name": "New York Office", "downstream_id": "12345"}, "account": {"id": "123456", "name": "Bank account", "nominal_code": "N091", "code": "453", "parent_id": "123456", "display_id": "123456"}, "accounting_period": {"id": "12345", "name": "Q1 2024"}, "line_items": [{"id": "12345", "line_number": 1, "expense_category": {"id": "12345", "downstream_id": "12345", "display_id": "Airfare", "name": "Airfare"}, "account": {"id": "123456", "name": "Bank account", "nominal_code": "N091", "code": "453", "parent_id": "123456", "display_id": "123456"}, "description": "Flight to New York", "quantity": 1, "unit_price": 27500.5, "amount": 275, "tax_rate": {"id": "123456", "code": "N-T", "name": "GST on Purchases", "rate": 10}, "tax_amount": 27.5, "total_amount": 302.5, "transaction_date": "2024-05-15", "billable": true, "reimbursable": true, "customer": {"id": "12345", "display_id": "CUST00101", "display_name": "Windsurf Shop", "company_name": "The boring company", "email": "boring@boring.com"}, "department": {"id": "12345", "display_id": "123456", "name": "Acme Inc.", "downstream_id": "12345"}, "location": null, "tracking_categories": [{"id": "123456", "code": "100", "name": "New York", "parent_id": "123456", "parent_name": "New York"}], "receipt_url": "https://example.com/receipts/123.pdf", "currency": "USD", "updated_by": "12345", "created_by": "12345", "updated_at": "2020-09-30T07:43:32.000Z", "created_at": "2020-09-30T07:43:32.000Z"}], "reference": "INV-2024-001", "subsidiary": {"id": "12345", "display_id": "123456", "name": "Acme Inc."}, "tracking_categories": [{"id": "123456", "code": "100", "name": "New York", "parent_id": "123456", "parent_name": "New York"}], "tax_inclusive": true, "approved_by": {"id": "12345", "display_name": "Jane Smith"}, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "row_version": "1-12345", "updated_by": "12345", "created_by": "12345", "updated_at": "2020-09-30T07:43:32.000Z", "created_at": "2020-09-30T07:43:32.000Z", "pass_through": [{"service_id": "", "extend_paths": [{"path": "$.nested.property", "value": {"TaxClassificationRef": {"value": "EUC-99990201-V1-00020000"}}}]}]}, "meta": {"items_on_page": 50, "cursors": {"previous": "em9oby1jcm06OnBhZ2U6OjE=", "current": "em9oby1jcm06OnBhZ2U6OjI=", "next": "em9oby1jcm06OnBhZ2U6OjM="}, "total_count": 1, "warnings": [{"type": "downstream_request_failed", "status_code": 429, "operation": "getManager"}]}} "400": application/json: {"status_code": 400, "error": "Bad Request", "type_name": "RequestValidationError", "message": "Invalid Params", "detail": "Missing property foobar", "ref": "https://developers.apideck.com/errors#requestvalidationerror", "downstream_errors": [{"message": "Account code '100' has been archived or deleted", "detail": "Each line item must reference a valid account", "code": "VALIDATION_ERROR"}]} "401": @@ -30381,7 +30543,7 @@ examples: x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" x-apideck-service-id: "salesforce" requestBody: - application/json: {"display_id": "123456", "number": "ER-001", "title": "Q1 Business Travel", "employee": {"id": "12345", "display_name": "John Doe"}, "status": "submitted", "transaction_date": "2021-05-01T12:00:00.000Z", "posting_date": "2024-06-01", "due_date": "2024-06-15", "currency": "USD", "currency_rate": 0.69, "sub_total": 250, "total_tax": 25, "total_amount": 1250.75, "reimbursable_amount": 1100, "memo": "Business travel expenses for Q1 client meetings", "department": {"display_id": "123456", "name": "Acme Inc."}, "location": {"id": "123456", "display_id": "123456", "name": "New York Office"}, "account": {"id": "123456", "name": "Bank account", "nominal_code": "N091", "code": "453", "parent_id": "123456", "display_id": "123456"}, "accounting_period": {"id": "12345", "name": "Q1 2024"}, "line_items": [], "subsidiary": {"display_id": "123456", "name": "Acme Inc."}, "tracking_categories": null, "tax_inclusive": true, "approved_by": {"id": "12345", "display_name": "Jane Smith"}, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "row_version": "1-12345", "pass_through": [{"service_id": "", "extend_paths": [{"path": "$.nested.property", "value": {"TaxClassificationRef": {"value": "EUC-99990201-V1-00020000"}}}]}]} + application/json: {"display_id": "123456", "number": "ER-001", "title": "Q1 Business Travel", "employee": {"id": "12345", "display_name": "John Doe"}, "status": "submitted", "transaction_date": "2021-05-01T12:00:00.000Z", "posting_date": "2024-06-01", "due_date": "2024-06-15", "currency": "USD", "currency_rate": 0.69, "sub_total": 250, "total_tax": 25, "total_amount": 1250.75, "reimbursable_amount": 1100, "memo": "Business travel expenses for Q1 client meetings", "department": {"display_id": "123456", "name": "Acme Inc."}, "location": {"id": "123456", "display_id": "123456", "name": "New York Office"}, "account": {"id": "123456", "name": "Bank account", "nominal_code": "N091", "code": "453", "parent_id": "123456", "display_id": "123456"}, "accounting_period": {"id": "12345", "name": "Q1 2024"}, "line_items": [], "reference": "INV-2024-001", "subsidiary": {"display_id": "123456", "name": "Acme Inc."}, "tracking_categories": null, "tax_inclusive": true, "approved_by": {"id": "12345", "display_name": "Jane Smith"}, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "row_version": "1-12345", "pass_through": [{"service_id": "", "extend_paths": [{"path": "$.nested.property", "value": {"TaxClassificationRef": {"value": "EUC-99990201-V1-00020000"}}}]}]} responses: "200": application/json: {"status_code": 200, "status": "OK", "service": "netsuite", "resource": "ExpenseReports", "operation": "update", "data": {"id": "12345"}} @@ -30566,6 +30728,7 @@ examples: raw: false limit: 20 fields: "id,updated_at" + pass_through: {"search": "San Francisco"} header: x-apideck-consumer-id: "test-consumer" x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" @@ -30724,9 +30887,63 @@ examples: application/json: {"status_code": 422, "error": "Unprocessable Entity", "type_name": "InvalidStateError", "message": "Invalid State", "detail": "Unprocessable request, please verify your request headers and body.", "ref": "https://developers.apideck.com/errors#invalidstateerror"} default: application/json: {"status_code": 400, "error": "Bad Request", "type_name": "RequestHeadersValidationError", "message": "Invalid Params", "detail": "Missing Header: x-apideck-consumer-id", "ref": "https://developers.apideck.com/errors#unauthorizederror"} + crm.listsAll: + speakeasy-default-crm-lists-all: + parameters: + query: + raw: false + limit: 20 + pass_through: {"search": "San Francisco"} + fields: "id,updated_at" + header: + x-apideck-consumer-id: "test-consumer" + x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" + x-apideck-service-id: "salesforce" + responses: + "200": + application/json: {"status_code": 200, "status": "OK", "service": "hubspot", "resource": "lists", "operation": "all", "data": [{"id": "12345", "name": "Newsletter Subscribers", "description": "Contacts who opted in to the monthly newsletter.", "type": "dynamic", "visibility": "shared", "owner_id": "12345", "filter_criteria": {"type": "and", "queries": [{"type": "object_type", "object_type": "contact"}]}, "record_count": 42, "folder_id": "12345", "object_type": "contacts", "is_dynamic": true, "is_favorite": false, "is_default": false, "is_system": false, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "tags": ["New"], "updated_by": "12345", "created_by": "12345", "updated_at": "2020-09-30T07:43:32.000Z", "created_at": "2020-09-30T07:43:32.000Z"}], "meta": {"items_on_page": 50, "cursors": {"previous": "em9oby1jcm06OnBhZ2U6OjE=", "current": "em9oby1jcm06OnBhZ2U6OjI=", "next": "em9oby1jcm06OnBhZ2U6OjM="}, "total_count": 1, "warnings": [{"type": "downstream_request_failed", "status_code": 429, "operation": "getManager"}]}, "links": {"previous": "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjE%3D", "current": "https://unify.apideck.com/crm/companies", "next": "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjM"}} + "400": + application/json: {"status_code": 400, "error": "Bad Request", "type_name": "RequestValidationError", "message": "Invalid Params", "detail": "Missing property foobar", "ref": "https://developers.apideck.com/errors#requestvalidationerror", "downstream_errors": [{"message": "Account code '100' has been archived or deleted", "detail": "Each line item must reference a valid account", "code": "VALIDATION_ERROR"}]} + "401": + application/json: {"status_code": 401, "error": "Unauthorized", "type_name": "UnauthorizedError", "message": "Unauthorized Request", "detail": "Missing authentication", "ref": "https://developers.apideck.com/errors#unauthorizederror"} + "402": + application/json: {"status_code": 402, "error": "Payment Required", "type_name": "RequestLimitError", "message": "Request Limit Reached", "detail": "You have reached your limit of 2000", "ref": "https://developers.apideck.com/errors#requestlimiterror"} + "404": + application/json: {"status_code": 404, "error": "Not Found", "type_name": "EntityNotFoundError", "message": "Unknown Widget", "detail": "Could not find widget with id: '123'", "ref": "https://developers.apideck.com/errors#entitynotfounderror"} + "422": + application/json: {"status_code": 422, "error": "Unprocessable Entity", "type_name": "InvalidStateError", "message": "Invalid State", "detail": "Unprocessable request, please verify your request headers and body.", "ref": "https://developers.apideck.com/errors#invalidstateerror"} + default: + application/json: {"status_code": 400, "error": "Bad Request", "type_name": "RequestHeadersValidationError", "message": "Invalid Params", "detail": "Missing Header: x-apideck-consumer-id", "ref": "https://developers.apideck.com/errors#unauthorizederror"} + crm.listsOne: + speakeasy-default-crm-lists-one: + parameters: + path: + id: "" + query: + raw: false + fields: "id,updated_at" + header: + x-apideck-consumer-id: "test-consumer" + x-apideck-app-id: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX" + x-apideck-service-id: "salesforce" + responses: + "200": + application/json: {"status_code": 200, "status": "OK", "service": "hubspot", "resource": "lists", "operation": "one", "data": {"id": "12345", "name": "Newsletter Subscribers", "description": "Contacts who opted in to the monthly newsletter.", "type": "dynamic", "visibility": "shared", "owner_id": "12345", "filter_criteria": {"type": "and", "queries": [{"type": "object_type", "object_type": "contact"}]}, "record_count": 42, "folder_id": "12345", "object_type": "contacts", "is_dynamic": true, "is_favorite": false, "is_default": false, "is_system": false, "custom_fields": [{"id": "2389328923893298", "name": "employee_level", "description": "Employee Level", "value": "Uses Salesforce and Marketo"}], "tags": ["New"], "updated_by": "12345", "created_by": "12345", "updated_at": "2020-09-30T07:43:32.000Z", "created_at": "2020-09-30T07:43:32.000Z"}, "meta": {"items_on_page": 50, "cursors": {"previous": "em9oby1jcm06OnBhZ2U6OjE=", "current": "em9oby1jcm06OnBhZ2U6OjI=", "next": "em9oby1jcm06OnBhZ2U6OjM="}, "total_count": 1, "warnings": [{"type": "downstream_request_failed", "status_code": 429, "operation": "getManager"}]}} + "400": + application/json: {"status_code": 400, "error": "Bad Request", "type_name": "RequestValidationError", "message": "Invalid Params", "detail": "Missing property foobar", "ref": "https://developers.apideck.com/errors#requestvalidationerror", "downstream_errors": [{"message": "Account code '100' has been archived or deleted", "detail": "Each line item must reference a valid account", "code": "VALIDATION_ERROR"}]} + "401": + application/json: {"status_code": 401, "error": "Unauthorized", "type_name": "UnauthorizedError", "message": "Unauthorized Request", "detail": "Missing authentication", "ref": "https://developers.apideck.com/errors#unauthorizederror"} + "402": + application/json: {"status_code": 402, "error": "Payment Required", "type_name": "RequestLimitError", "message": "Request Limit Reached", "detail": "You have reached your limit of 2000", "ref": "https://developers.apideck.com/errors#requestlimiterror"} + "404": + application/json: {"status_code": 404, "error": "Not Found", "type_name": "EntityNotFoundError", "message": "Unknown Widget", "detail": "Could not find widget with id: '123'", "ref": "https://developers.apideck.com/errors#entitynotfounderror"} + "422": + application/json: {"status_code": 422, "error": "Unprocessable Entity", "type_name": "InvalidStateError", "message": "Invalid State", "detail": "Unprocessable request, please verify your request headers and body.", "ref": "https://developers.apideck.com/errors#invalidstateerror"} + default: + application/json: {"status_code": 400, "error": "Bad Request", "type_name": "RequestHeadersValidationError", "message": "Invalid Params", "detail": "Missing Header: x-apideck-consumer-id", "ref": "https://developers.apideck.com/errors#unauthorizederror"} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: "## Csharp SDK Changes:\n* `Apideck.Webhook.Webhooks.List()`: `response.data[].Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Create()`: \n * `request.createWebhookRequest.Events[]` **Changed**\n * `response.data.Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Get()`: `response.data.Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Update()`: \n * `request.updateWebhookRequest.Events[]` **Changed**\n * `response.data.Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Delete()`: `response.data.Events[]` **Changed**\n" +releaseNotes: "## Csharp SDK Changes:\n* `Apideck.Vault.Consumers.Create()`: `response.data.Connections[].Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.ConnectionSettings.Update()`: \n * `request.Connection.Metadata` **Changed** (Breaking ⚠️)\n * `response.data.Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.ConnectionSettings.List()`: `response.data.Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.Connections.Token()`: `response.data.Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.Connections.Imports()`: `response.data.Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.Connections.Update()`: \n * `request.Connection.Metadata` **Changed** (Breaking ⚠️)\n * `response.data.Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.Connections.Get()`: `response.data.Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.Connections.List()`: `response.data[].Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.Consumers.Update()`: `response.data.Connections[].Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Vault.Consumers.Get()`: `response.data.Connections[].Metadata` **Changed** (Breaking ⚠️)\n* `Apideck.Accounting.Expenses.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Crm.Lists.List()`: **Added**\n* `Apideck.Accounting.ExpenseCategories.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.ExpenseReports.List()`: \n * `request.PassThrough` **Added**\n * `response.data[].Reference` **Added**\n* `Apideck.Accounting.ExpenseReports.Create()`: \n * `request.ExpenseReport.Reference` **Added**\n* `Apideck.Accounting.ExpenseReports.Get()`: `response.data.Reference` **Added**\n* `Apideck.Accounting.ExpenseReports.Update()`: \n * `request.ExpenseReport.Reference` **Added**\n* `Apideck.Connector.Connectors.List()`: `response.data[].Overview` **Added**\n* `Apideck.Connector.Connectors.Get()`: `response.data.Overview` **Added**\n* `Apideck.Accounting.Quotes.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Categories.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Employees.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Attachments.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Departments.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Locations.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Subsidiaries.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Companies.List()`: \n * `request.PassThrough` **Added**\n* `Apideck.Accounting.Bills.List()`: \n * `request.Filter` **Changed**\n* `Apideck.Crm.Lists.Get()`: **Added**\n* `Apideck.Webhook.Webhooks.List()`: `response.data[].Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Create()`: \n * `request.createWebhookRequest.Events[]` **Changed**\n * `response.data.Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Get()`: `response.data.Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Update()`: \n * `request.updateWebhookRequest.Events[]` **Changed**\n * `response.data.Events[]` **Changed**\n* `Apideck.Webhook.Webhooks.Delete()`: `response.data.Events[]` **Changed**\n" generatedFiles: - .gitattributes - ApideckUnifySdk.sln diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 4f7c57030..6575f79f9 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -29,7 +29,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false csharp: - version: 0.23.28 + version: 0.24.0 additionalDependencies: [] author: Speakeasy baseErrorName: BaseException @@ -60,8 +60,10 @@ csharp: outputModelSuffix: output packageName: ApideckUnifySdk packageTags: "" + presenceAwareJsonSerialization: false respectTitlesForPrimitiveUnionMembers: false responseFormat: envelope-http sourceDirectory: src targetFramework: dotnetVersion + unionStrategy: left-to-right useNodatime: true diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 5bf0553e9..d378e3bc3 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,20 +1,20 @@ -speakeasyVersion: 1.788.1 +speakeasyVersion: 1.791.0 sources: Apideck: sourceNamespace: apideck - sourceRevisionDigest: sha256:56c87207f540056f49330c63dab6064d5ff10f28ea36e77aac65398b965d11cc - sourceBlobDigest: sha256:ee0cd79c4facf20381c984867cb0023885ed425d93eb6ef2d5075bd4017ea292 + sourceRevisionDigest: sha256:f6ae27600c35fa3b59300407b7f4eb93b28108dbeda251b2a09d7b24c399c492 + sourceBlobDigest: sha256:fa4e8202375ef9f718294f5835e7a6c36a971c9fda632c6eede73f088a0b4c7b tags: - latest - - 10.24.47 + - 10.28.1 targets: apideck: source: Apideck sourceNamespace: apideck - sourceRevisionDigest: sha256:56c87207f540056f49330c63dab6064d5ff10f28ea36e77aac65398b965d11cc - sourceBlobDigest: sha256:ee0cd79c4facf20381c984867cb0023885ed425d93eb6ef2d5075bd4017ea292 + sourceRevisionDigest: sha256:f6ae27600c35fa3b59300407b7f4eb93b28108dbeda251b2a09d7b24c399c492 + sourceBlobDigest: sha256:fa4e8202375ef9f718294f5835e7a6c36a971c9fda632c6eede73f088a0b4c7b codeSamplesNamespace: apideck-csharp-code-samples - codeSamplesRevisionDigest: sha256:492dfd12c163b3872850f2cca6e54de9aa2c390beca43b54e0d036c45c01ca1b + codeSamplesRevisionDigest: sha256:3e834c46316abd068f77aed0372e5f33388077164a92d8baacdf1a0bc4fc6837 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/NUGET.md b/NUGET.md index 78b0b64ab..529716203 100644 --- a/NUGET.md +++ b/NUGET.md @@ -351,7 +351,7 @@ catch (System.Net.Http.HttpRequestException ex) * [`System.Net.Http.HttpRequestException`](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httprequestexception): Network connectivity error. For more details about the underlying cause, inspect the `ex.InnerException`. * Inheriting from [`BaseException`](./src/ApideckUnifySdk/Models/Errors/BaseException.cs): - * [`Unauthorized`](./src/ApideckUnifySdk/Models/Errors/Unauthorized.cs): Unauthorized. Status code `401`. Applicable to 6 of 336 methods.* + * [`Unauthorized`](./src/ApideckUnifySdk/Models/Errors/Unauthorized.cs): Unauthorized. Status code `401`. Applicable to 6 of 338 methods.* * [`ResponseValidationError`](./src/ApideckUnifySdk/Models/Errors/ResponseValidationError.cs): Thrown when the response data could not be deserialized into the expected type. \* Refer to the [relevant documentation](#available-resources-and-operations) to determine whether an exception applies to a specific operation. diff --git a/README.md b/README.md index 54f6580be..b75c17cb8 100644 --- a/README.md +++ b/README.md @@ -504,6 +504,11 @@ while(res != null) * [Update](docs/sdks/leads/README.md#update) - Update lead * [Delete](docs/sdks/leads/README.md#delete) - Delete lead +### [Crm.Lists](docs/sdks/lists/README.md) + +* [List](docs/sdks/lists/README.md#list) - List lists +* [Get](docs/sdks/lists/README.md#get) - Get list + ### [Crm.Notes](docs/sdks/notes/README.md) * [List](docs/sdks/notes/README.md#list) - List notes @@ -1026,7 +1031,7 @@ catch (System.Net.Http.HttpRequestException ex) * [`System.Net.Http.HttpRequestException`](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httprequestexception): Network connectivity error. For more details about the underlying cause, inspect the `ex.InnerException`. * Inheriting from [`BaseException`](./src/ApideckUnifySdk/Models/Errors/BaseException.cs): - * [`Unauthorized`](./src/ApideckUnifySdk/Models/Errors/Unauthorized.cs): Unauthorized. Status code `401`. Applicable to 6 of 336 methods.* + * [`Unauthorized`](./src/ApideckUnifySdk/Models/Errors/Unauthorized.cs): Unauthorized. Status code `401`. Applicable to 6 of 338 methods.* * [`ResponseValidationError`](./src/ApideckUnifySdk/Models/Errors/ResponseValidationError.cs): Thrown when the response data could not be deserialized into the expected type. diff --git a/RELEASES.md b/RELEASES.md index c2034fcd7..04ad30b5e 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -948,4 +948,14 @@ Based on: ### Generated - [csharp v0.23.28] . ### Releases -- [NuGet v0.23.28] https://www.nuget.org/packages/ApideckUnifySdk/0.23.28 - . \ No newline at end of file +- [NuGet v0.23.28] https://www.nuget.org/packages/ApideckUnifySdk/0.23.28 - . + +## 2026-07-27 14:15:46 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.791.0 (2.924.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [csharp v0.24.0] . +### Releases +- [NuGet v0.24.0] https://www.nuget.org/packages/ApideckUnifySdk/0.24.0 - . \ No newline at end of file diff --git a/docs/Models/Components/BillsFilter.md b/docs/Models/Components/BillsFilter.md index d0611e34f..d3874f87b 100644 --- a/docs/Models/Components/BillsFilter.md +++ b/docs/Models/Components/BillsFilter.md @@ -7,5 +7,7 @@ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `IdSince` | *string* | :heavy_minus_sign: | Return records with a row ID greater than or equal to the given value | 1 | | `UpdatedSince` | [DateTime](https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-5.0) | :heavy_minus_sign: | N/A | 2020-09-30T07:43:32.000Z | +| `BilledSince` | [LocalDate](https://nodatime.org/3.1.x/api/NodaTime.LocalDate.html) | :heavy_minus_sign: | Return bills with a document date (`bill_date`) on or after the given date (YYYY-MM-DD). | 2020-09-30 | +| `DueSince` | [LocalDate](https://nodatime.org/3.1.x/api/NodaTime.LocalDate.html) | :heavy_minus_sign: | Return bills with a due date (`due_date`) on or after the given date (YYYY-MM-DD). | 2020-09-30 | | `Status` | [BillsFilterStatus](../../Models/Components/BillsFilterStatus.md) | :heavy_minus_sign: | Filter by bill status | paid | | `SubsidiaryId` | *string* | :heavy_minus_sign: | Filter by the subsidiary (legal entity) the record belongs to. Only honored on connectors that support multi-entity scoping (e.g. NetSuite OneWorld); ignored elsewhere. | 12345 | \ No newline at end of file diff --git a/docs/Models/Components/Connection.md b/docs/Models/Components/Connection.md index a9b53cb74..5e179d571 100644 --- a/docs/Models/Components/Connection.md +++ b/docs/Models/Components/Connection.md @@ -22,7 +22,7 @@ | `AuthorizeUrl` | *string* | :heavy_minus_sign: | The OAuth redirect URI. Redirect your users to this URI to let them authorize your app in the connector's UI. Before you can use this URI, you must add `redirect_uri` as a query parameter to the `authorize_url`. Be sure to URL encode the `redirect_uri` part. Your users will be redirected to this `redirect_uri` after they granted access to your app in the connector's UI. | https://unify.apideck.com/vault/authorize/salesforce/?state= | | `RevokeUrl` | *string* | :heavy_minus_sign: | The OAuth revoke URI. Redirect your users to this URI to revoke this connection. Before you can use this URI, you must add `redirect_uri` as a query parameter. Your users will be redirected to this `redirect_uri` after they granted access to your app in the connector's UI. | https://unify.apideck.com/vault/revoke/salesforce/?state= | | `Settings` | Dictionary | :heavy_minus_sign: | Connection settings. Values will persist to `form_fields` with corresponding id | {
"instance_url": "https://eu28.salesforce.com",
"api_key": "12345xxxxxx"
} | -| `Metadata` | Dictionary | :heavy_minus_sign: | Attach your own consumer specific metadata | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | +| `Metadata` | [ConnectionMetadata](../../Models/Components/ConnectionMetadata.md) | :heavy_minus_sign: | Attach your own consumer specific metadata | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | | `FormFields` | List<[FormField](../../Models/Components/FormField.md)> | :heavy_minus_sign: | The settings that are wanted to create a connection. | [
{
"id": "instance_url",
"label": "Instance url",
"value": "https://eu28.salesforce.com",
"placeholder": "",
"mask": false,
"type": "text",
"required": true,
"disabled": false,
"custom_field": false,
"sensitive": false
},
{
"id": "api_key",
"label": "API Key",
"value": "123455677",
"placeholder": "",
"mask": false,
"type": "text",
"required": true,
"disabled": false,
"custom_field": false,
"sensitive": true
}
] | | `Configuration` | List<[Configuration](../../Models/Components/Configuration.md)> | :heavy_minus_sign: | N/A | | | `ConfigurableResources` | List<*string*> | :heavy_minus_sign: | N/A | [
"opportunities",
"companies",
"contacts",
"leads"
] | diff --git a/docs/Models/Components/ConnectionInput.md b/docs/Models/Components/ConnectionInput.md index f4bcc26e6..07a929950 100644 --- a/docs/Models/Components/ConnectionInput.md +++ b/docs/Models/Components/ConnectionInput.md @@ -7,7 +7,7 @@ | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | | `Enabled` | *bool* | :heavy_minus_sign: | Whether the connection is enabled or not. You can enable or disable a connection using the Update Connection API. | true | | `Settings` | Dictionary | :heavy_minus_sign: | Connection settings. Values will persist to `form_fields` with corresponding id | {
"instance_url": "https://eu28.salesforce.com",
"api_key": "12345xxxxxx"
} | -| `Metadata` | Dictionary | :heavy_minus_sign: | Attach your own consumer specific metadata | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | +| `Metadata` | [ConnectionMetadataInput](../../Models/Components/ConnectionMetadataInput.md) | :heavy_minus_sign: | Attach your own consumer specific metadata | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | | `Configuration` | List<[ConnectionConfiguration](../../Models/Components/ConnectionConfiguration.md)> | :heavy_minus_sign: | N/A | | | `CustomMappings` | List<[CustomMappingInput](../../Models/Components/CustomMappingInput.md)> | :heavy_minus_sign: | List of custom mappings configured for this connection | | | `ConsentState` | [ConsentState](../../Models/Components/ConsentState.md) | :heavy_minus_sign: | The current consent state of the connection | granted | diff --git a/docs/Models/Components/ConnectionMetadata.md b/docs/Models/Components/ConnectionMetadata.md new file mode 100644 index 000000000..7aac29a65 --- /dev/null +++ b/docs/Models/Components/ConnectionMetadata.md @@ -0,0 +1,11 @@ +# ConnectionMetadata + +Attach your own consumer specific metadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `CompanyId` | *string* | :heavy_minus_sign: | Normalized identifier of the authorized organization, copied from the connector-specific setting (e.g. Xero tenant_id, QuickBooks realm_id, NetSuite account_id). | 4bfe0fce-9257-4a1a-a691-5eed6c957f9a | +| `AdditionalProperties` | Dictionary | :heavy_minus_sign: | N/A | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | \ No newline at end of file diff --git a/docs/Models/Components/ConnectionMetadataInput.md b/docs/Models/Components/ConnectionMetadataInput.md new file mode 100644 index 000000000..0aa7d9c9a --- /dev/null +++ b/docs/Models/Components/ConnectionMetadataInput.md @@ -0,0 +1,10 @@ +# ConnectionMetadataInput + +Attach your own consumer specific metadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| `AdditionalProperties` | Dictionary | :heavy_minus_sign: | N/A | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | \ No newline at end of file diff --git a/docs/Models/Components/Connector.md b/docs/Models/Components/Connector.md index 22d178c40..f780485d0 100644 --- a/docs/Models/Components/Connector.md +++ b/docs/Models/Components/Connector.md @@ -32,4 +32,5 @@ | `WebhookSupport` | [WebhookSupport](../../Models/Components/WebhookSupport.md) | :heavy_minus_sign: | How webhooks are supported for the connector. Sometimes the connector natively supports webhooks, other times Apideck virtualizes them based on polling. | | | `SchemaSupport` | [SchemaSupport](../../Models/Components/SchemaSupport.md) | :heavy_minus_sign: | When a connector has schema_support, a call can be made to retrieve a json schema that describes a downstream resource. | | | `Docs` | List<[ConnectorDoc](../../Models/Components/ConnectorDoc.md)> | :heavy_minus_sign: | N/A | | +| `Overview` | [ConnectorOverview](../../Models/Components/ConnectorOverview.md) | :heavy_minus_sign: | Editorial overview metadata for the connector, used to render the connector's Overview documentation (implementation difficulty, partnership requirements, sandbox availability, and other at-a-glance facts). | | | `TlsSupport` | [TlsSupport](../../Models/Components/TlsSupport.md) | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/Models/Components/ConnectorOverview.md b/docs/Models/Components/ConnectorOverview.md new file mode 100644 index 000000000..062984b97 --- /dev/null +++ b/docs/Models/Components/ConnectorOverview.md @@ -0,0 +1,33 @@ +# ConnectorOverview + +Editorial overview metadata for the connector, used to render the connector's Overview documentation (implementation difficulty, partnership requirements, sandbox availability, and other at-a-glance facts). + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| `Beta` | *bool* | :heavy_minus_sign: | Whether this connector's overview content is still in beta. | false | +| `Demo` | *bool* | :heavy_minus_sign: | Whether this connector is demo-only. | false | +| `Difficulty` | [Difficulty](../../Models/Components/Difficulty.md) | :heavy_check_mark: | At-a-glance implementation difficulty rating. | moderate | +| `DifficultyReason` | *string* | :heavy_check_mark: | Short explanation of why the connector has the given difficulty rating. | Self-Service Signup + App Review Required | +| `AuthenticationNote` | *string* | :heavy_minus_sign: | Notes on the connector's authentication flow. | | +| `Webhooks` | *string* | :heavy_minus_sign: | Description of webhook support for this connector. | | +| `PartnershipRequired` | *bool* | :heavy_check_mark: | Whether a partnership with the downstream provider is required. | true | +| `PartnershipUrl` | *string* | :heavy_minus_sign: | URL to the downstream provider's partnership/developer portal. | | +| `PartnershipNote` | *string* | :heavy_minus_sign: | Additional notes about the partnership requirement. | | +| `PartnershipPortalName` | *string* | :heavy_minus_sign: | Name of the downstream provider's developer portal. | | +| `ApideckCredentialsAvailable` | *bool* | :heavy_check_mark: | Whether Apideck-managed credentials are available for this connector. | true | +| `ApideckCredentialsNote` | *string* | :heavy_minus_sign: | Additional notes about Apideck-managed credentials. | | +| `Costs` | *string* | :heavy_minus_sign: | Notes on costs associated with using this connector. | | +| `RateLimits` | *string* | :heavy_minus_sign: | Notes on rate limits enforced by the downstream provider. | | +| `AccountTypeRequired` | *string* | :heavy_check_mark: | The type of downstream account required to use this connector. | | +| `SandboxAvailable` | *bool* | :heavy_check_mark: | Whether a sandbox environment is available for this connector. | true | +| `SandboxUrl` | *string* | :heavy_minus_sign: | URL to the downstream provider's sandbox environment. | | +| `SandboxNote` | *string* | :heavy_minus_sign: | Additional notes about the sandbox environment. | | +| `ConsumerAccessLevel` | *string* | :heavy_check_mark: | The access level a consumer's end user needs to authorize the connection. | | +| `ImportantToKnow` | List<*string*> | :heavy_minus_sign: | Flat list of important facts about this connector. | | +| `SupportedResourceCategories` | List<[SupportedResourceCategories](../../Models/Components/SupportedResourceCategories.md)> | :heavy_minus_sign: | Grouping of the connector's supported resources by category. | | +| `ExternalGuides` | List<[ExternalGuides](../../Models/Components/ExternalGuides.md)> | :heavy_minus_sign: | Links to external guides relevant to this connector. | | +| `ResponsibilityMatrix` | List<[ResponsibilityMatrix](../../Models/Components/ResponsibilityMatrix.md)> | :heavy_minus_sign: | Who is responsible for each area of the integration. Cell values are display strings (e.g. "✓", "Docs provided"), not booleans. | | +| `EnvironmentNotes` | List<[EnvironmentNotes](../../Models/Components/EnvironmentNotes.md)> | :heavy_minus_sign: | Notes about the different environments (sandbox, production, etc.) available for this connector. | | \ No newline at end of file diff --git a/docs/Models/Components/ConsumerConnection.md b/docs/Models/Components/ConsumerConnection.md index 6cd8ceae3..e49531e59 100644 --- a/docs/Models/Components/ConsumerConnection.md +++ b/docs/Models/Components/ConsumerConnection.md @@ -17,7 +17,7 @@ | `AuthType` | [AuthType](../../Models/Components/AuthType.md) | :heavy_minus_sign: | Type of authorization used by the connector | oauth2 | | `Enabled` | *bool* | :heavy_minus_sign: | N/A | true | | `Settings` | Dictionary | :heavy_minus_sign: | Connection settings. Values will persist to `form_fields` with corresponding id | {
"instance_url": "https://eu28.salesforce.com"
} | -| `Metadata` | Dictionary | :heavy_minus_sign: | Attach your own consumer specific metadata | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | +| `Metadata` | [Metadata](../../Models/Components/Metadata.md) | :heavy_minus_sign: | Attach your own consumer specific metadata | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | | `CreatedAt` | *string* | :heavy_minus_sign: | N/A | 2020-09-19T12:18:37.071Z | | `UpdatedAt` | *string* | :heavy_minus_sign: | N/A | 2020-09-19T12:18:37.071Z | | `State` | [ConnectionState](../../Models/Components/ConnectionState.md) | :heavy_minus_sign: | [Connection state flow](#section/Connection-state) | authorized | diff --git a/docs/Models/Components/Difficulty.md b/docs/Models/Components/Difficulty.md new file mode 100644 index 000000000..6f142aa82 --- /dev/null +++ b/docs/Models/Components/Difficulty.md @@ -0,0 +1,24 @@ +# Difficulty + +At-a-glance implementation difficulty rating. + +## Example Usage + +```csharp +using ApideckUnifySdk.Models.Components; + +var value = Difficulty.Straightforward; + +// Open enum: use .Of() to create instances from custom string values +var custom = Difficulty.Of("custom_value"); +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `Straightforward` | straightforward | +| `Moderate` | moderate | +| `Involved` | involved | +| `HighlyComplex` | highly_complex | \ No newline at end of file diff --git a/docs/Models/Components/EnvironmentNotes.md b/docs/Models/Components/EnvironmentNotes.md new file mode 100644 index 000000000..10fcf3be4 --- /dev/null +++ b/docs/Models/Components/EnvironmentNotes.md @@ -0,0 +1,9 @@ +# EnvironmentNotes + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | +| `Environment` | *string* | :heavy_check_mark: | Environment name. | +| `Description` | *string* | :heavy_check_mark: | Description of the environment. | \ No newline at end of file diff --git a/docs/Models/Components/ExpenseReport.md b/docs/Models/Components/ExpenseReport.md index d02ab19d7..b9a729228 100644 --- a/docs/Models/Components/ExpenseReport.md +++ b/docs/Models/Components/ExpenseReport.md @@ -26,6 +26,7 @@ | `Account` | [LinkedLedgerAccount](../../Models/Components/LinkedLedgerAccount.md) | :heavy_minus_sign: | N/A | | | `AccountingPeriod` | [AccountingPeriod](../../Models/Components/AccountingPeriod.md) | :heavy_minus_sign: | The accounting period the expense report is posted to. | | | `LineItems` | List<[ExpenseReportLineItem](../../Models/Components/ExpenseReportLineItem.md)> | :heavy_check_mark: | Expense line items linked to this expense report. | | +| `Reference` | *string* | :heavy_minus_sign: | Optional reference identifier for the transaction. | INV-2024-001 | | `Subsidiary` | [LinkedSubsidiary](../../Models/Components/LinkedSubsidiary.md) | :heavy_minus_sign: | N/A | | | `TrackingCategories` | List<[LinkedTrackingCategory](../../Models/Components/LinkedTrackingCategory.md)> | :heavy_minus_sign: | A list of linked tracking categories. | | | `TaxInclusive` | *bool* | :heavy_minus_sign: | Amounts are including tax | true | diff --git a/docs/Models/Components/ExpenseReportInput.md b/docs/Models/Components/ExpenseReportInput.md index 01ddae564..eed5821f1 100644 --- a/docs/Models/Components/ExpenseReportInput.md +++ b/docs/Models/Components/ExpenseReportInput.md @@ -25,6 +25,7 @@ | `Account` | [LinkedLedgerAccount](../../Models/Components/LinkedLedgerAccount.md) | :heavy_minus_sign: | N/A | | | `AccountingPeriod` | [AccountingPeriod](../../Models/Components/AccountingPeriod.md) | :heavy_minus_sign: | The accounting period the expense report is posted to. | | | `LineItems` | List<[ExpenseReportLineItemInput](../../Models/Components/ExpenseReportLineItemInput.md)> | :heavy_check_mark: | Expense line items linked to this expense report. | | +| `Reference` | *string* | :heavy_minus_sign: | Optional reference identifier for the transaction. | INV-2024-001 | | `Subsidiary` | [LinkedSubsidiaryInput](../../Models/Components/LinkedSubsidiaryInput.md) | :heavy_minus_sign: | N/A | | | `TrackingCategories` | List<[LinkedTrackingCategory](../../Models/Components/LinkedTrackingCategory.md)> | :heavy_minus_sign: | A list of linked tracking categories. | | | `TaxInclusive` | *bool* | :heavy_minus_sign: | Amounts are including tax | true | diff --git a/docs/Models/Components/ExternalGuides.md b/docs/Models/Components/ExternalGuides.md new file mode 100644 index 000000000..a7c523067 --- /dev/null +++ b/docs/Models/Components/ExternalGuides.md @@ -0,0 +1,10 @@ +# ExternalGuides + + +## Fields + +| Field | Type | Required | Description | +| ----------------------- | ----------------------- | ----------------------- | ----------------------- | +| `Title` | *string* | :heavy_check_mark: | Guide title. | +| `Url` | *string* | :heavy_check_mark: | Guide URL. | +| `Source` | *string* | :heavy_check_mark: | Publisher of the guide. | \ No newline at end of file diff --git a/docs/Models/Components/GetListResponse.md b/docs/Models/Components/GetListResponse.md new file mode 100644 index 000000000..ec7c8cd7a --- /dev/null +++ b/docs/Models/Components/GetListResponse.md @@ -0,0 +1,17 @@ +# GetListResponse + +List + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | +| `StatusCode` | *long* | :heavy_check_mark: | HTTP Response Status Code | 200 | +| `Status` | *string* | :heavy_check_mark: | HTTP Response Status | OK | +| `Service` | *string* | :heavy_check_mark: | Apideck ID of service provider | hubspot | +| `Resource` | *string* | :heavy_check_mark: | Unified API resource name | lists | +| `Operation` | *string* | :heavy_check_mark: | Operation performed | one | +| `Data` | [List](../../Models/Components/List.md) | :heavy_check_mark: | N/A | | +| `Meta` | [Meta](../../Models/Components/Meta.md) | :heavy_minus_sign: | Response metadata | | +| `Raw` | Dictionary | :heavy_minus_sign: | Raw response from the integration when raw=true query param is provided | | \ No newline at end of file diff --git a/docs/Models/Components/GetListsResponse.md b/docs/Models/Components/GetListsResponse.md new file mode 100644 index 000000000..19d54d0f7 --- /dev/null +++ b/docs/Models/Components/GetListsResponse.md @@ -0,0 +1,18 @@ +# GetListsResponse + +Lists + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | +| `StatusCode` | *long* | :heavy_check_mark: | HTTP Response Status Code | 200 | +| `Status` | *string* | :heavy_check_mark: | HTTP Response Status | OK | +| `Service` | *string* | :heavy_check_mark: | Apideck ID of service provider | hubspot | +| `Resource` | *string* | :heavy_check_mark: | Unified API resource name | lists | +| `Operation` | *string* | :heavy_check_mark: | Operation performed | all | +| `Data` | List<[List](../../Models/Components/List.md)> | :heavy_check_mark: | N/A | | +| `Raw` | Dictionary | :heavy_minus_sign: | Raw response from the integration when raw=true query param is provided | | +| `Meta` | [Meta](../../Models/Components/Meta.md) | :heavy_minus_sign: | Response metadata | | +| `Links` | [Links](../../Models/Components/Links.md) | :heavy_minus_sign: | Links to navigate to previous or next pages through the API | | \ No newline at end of file diff --git a/docs/Models/Components/List.md b/docs/Models/Components/List.md new file mode 100644 index 000000000..5fd834fc5 --- /dev/null +++ b/docs/Models/Components/List.md @@ -0,0 +1,27 @@ +# List + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Id` | *string* | :heavy_check_mark: | The unique identifier of the List. | 12345 | +| `Name` | *string* | :heavy_check_mark: | The name of the List. | Newsletter Subscribers | +| `Description` | *string* | :heavy_minus_sign: | The description of the List. | Contacts who opted in to the monthly newsletter. | +| `Type` | [ListType](../../Models/Components/ListType.md) | :heavy_minus_sign: | Whether the List is static (a fixed set of records) or dynamic (a saved segment that is automatically kept up to date based on filter criteria). | dynamic | +| `Visibility` | [ListVisibility](../../Models/Components/ListVisibility.md) | :heavy_minus_sign: | The visibility of the List. Which of these values a given connector can return depends on its native sharing model — see the connector-specific gotchas below for details. | shared | +| `OwnerId` | *string* | :heavy_minus_sign: | The unique identifier of the user who owns the List. | 12345 | +| `FilterCriteria` | Dictionary | :heavy_minus_sign: | The filter criteria used to determine which records belong to a dynamic List. Shape is connector-native and passed through largely as-is (e.g. Close returns its own nested query-tree structure) rather than normalized to a common format. | {
"type": "and",
"queries": [
{
"type": "object_type",
"object_type": "contact"
}
]
} | +| `RecordCount` | *long* | :heavy_minus_sign: | The number of records currently in the List. | 42 | +| `FolderId` | *string* | :heavy_minus_sign: | The unique identifier of the folder the List is organized under. | 12345 | +| `ObjectType` | *string* | :heavy_minus_sign: | The type of CRM records the List contains. Normalized to a lowercase plural noun for the vendor's standard object types (e.g. contacts, companies, opportunities, leads, tickets, campaigns, tasks, events); for vendor-specific or custom object types the raw downstream identifier is passed through unchanged, following the connector's native casing (e.g. a HubSpot custom objectTypeId like 2-12345 or a Salesforce custom object API name), so a raw value may not always be distinguishable from a normalized one. This field is intentionally open-ended — no closed enum is enforced. | contacts | +| `IsDynamic` | *bool* | :heavy_minus_sign: | Whether the List is dynamic, meaning its records are automatically kept up to date based on filter criteria. This is a boolean mirror of `type` (`true` when `type` is `dynamic`, `false` when `static`), provided for callers that prefer a boolean check over a string comparison. | true | +| `IsFavorite` | *bool* | :heavy_minus_sign: | Whether the List has been marked as a favorite. | false | +| `IsDefault` | *bool* | :heavy_minus_sign: | Whether the List is a default List. | false | +| `IsSystem` | *bool* | :heavy_minus_sign: | Whether the List is a system-generated List. | false | +| `CustomFields` | List<[CustomField](../../Models/Components/CustomField.md)> | :heavy_minus_sign: | N/A | | +| `Tags` | List<*string*> | :heavy_minus_sign: | N/A | [
"New"
] | +| `UpdatedBy` | *string* | :heavy_minus_sign: | The unique identifier of the user who last updated the List. | 12345 | +| `CreatedBy` | *string* | :heavy_minus_sign: | The unique identifier of the user who created the List. | 12345 | +| `UpdatedAt` | [DateTime](https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-5.0) | :heavy_minus_sign: | The date and time when the List was last updated. | 2020-09-30T07:43:32.000Z | +| `CreatedAt` | [DateTime](https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-5.0) | :heavy_minus_sign: | The date and time when the List was created. | 2020-09-30T07:43:32.000Z | \ No newline at end of file diff --git a/docs/Models/Components/ListType.md b/docs/Models/Components/ListType.md new file mode 100644 index 000000000..de1609856 --- /dev/null +++ b/docs/Models/Components/ListType.md @@ -0,0 +1,22 @@ +# ListType + +Whether the List is static (a fixed set of records) or dynamic (a saved segment that is automatically kept up to date based on filter criteria). + +## Example Usage + +```csharp +using ApideckUnifySdk.Models.Components; + +var value = ListType.Static; + +// Open enum: use .Of() to create instances from custom string values +var custom = ListType.Of("custom_value"); +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `Static` | static | +| `Dynamic` | dynamic | \ No newline at end of file diff --git a/docs/Models/Components/ListVisibility.md b/docs/Models/Components/ListVisibility.md new file mode 100644 index 000000000..28affff50 --- /dev/null +++ b/docs/Models/Components/ListVisibility.md @@ -0,0 +1,23 @@ +# ListVisibility + +The visibility of the List. Which of these values a given connector can return depends on its native sharing model — see the connector-specific gotchas below for details. + +## Example Usage + +```csharp +using ApideckUnifySdk.Models.Components; + +var value = ListVisibility.Private; + +// Open enum: use .Of() to create instances from custom string values +var custom = ListVisibility.Of("custom_value"); +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `Private` | private | +| `Shared` | shared | +| `Public` | public | \ No newline at end of file diff --git a/docs/Models/Components/Metadata.md b/docs/Models/Components/Metadata.md new file mode 100644 index 000000000..cd30e75b5 --- /dev/null +++ b/docs/Models/Components/Metadata.md @@ -0,0 +1,11 @@ +# Metadata + +Attach your own consumer specific metadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `CompanyId` | *string* | :heavy_minus_sign: | Normalized identifier of the authorized organization, copied from the connector-specific setting (e.g. Xero tenant_id, QuickBooks realm_id, NetSuite account_id). | 4bfe0fce-9257-4a1a-a691-5eed6c957f9a | +| `AdditionalProperties` | Dictionary | :heavy_minus_sign: | N/A | {
"account": {
"name": "My Company",
"id": "c01458a5-7276-41ce-bc19-639906b0450a"
},
"plan": "enterprise"
} | \ No newline at end of file diff --git a/docs/Models/Components/ResponsibilityMatrix.md b/docs/Models/Components/ResponsibilityMatrix.md new file mode 100644 index 000000000..d68ff0736 --- /dev/null +++ b/docs/Models/Components/ResponsibilityMatrix.md @@ -0,0 +1,11 @@ +# ResponsibilityMatrix + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | +| `Area` | *string* | :heavy_check_mark: | The responsibility area. | +| `Apideck` | *string* | :heavy_minus_sign: | Apideck's responsibility for this area. | +| `Consumer` | *string* | :heavy_minus_sign: | The consumer's responsibility for this area. | +| `Customer` | *string* | :heavy_minus_sign: | The end customer's responsibility for this area. | \ No newline at end of file diff --git a/docs/Models/Components/SupportedResourceCategories.md b/docs/Models/Components/SupportedResourceCategories.md new file mode 100644 index 000000000..d0a704812 --- /dev/null +++ b/docs/Models/Components/SupportedResourceCategories.md @@ -0,0 +1,9 @@ +# SupportedResourceCategories + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | +| `Name` | *string* | :heavy_check_mark: | Category name. | +| `Resources` | List<*string*> | :heavy_check_mark: | Resource ids belonging to this category. | \ No newline at end of file diff --git a/docs/Models/Components/WebhookEventType.md b/docs/Models/Components/WebhookEventType.md index 895810dde..f3d3b32fb 100644 --- a/docs/Models/Components/WebhookEventType.md +++ b/docs/Models/Components/WebhookEventType.md @@ -119,6 +119,9 @@ var custom = WebhookEventType.Of("custom_value"); | `HrisCompanyCreated` | hris.company.created | | `HrisCompanyUpdated` | hris.company.updated | | `HrisCompanyDeleted` | hris.company.deleted | +| `HrisTimeOffRequestCreated` | hris.time-off-request.created | +| `HrisTimeOffRequestUpdated` | hris.time-off-request.updated | +| `HrisTimeOffRequestDeleted` | hris.time-off-request.deleted | | `FileStorageFileCreated` | file-storage.file.created | | `FileStorageFileUpdated` | file-storage.file.updated | | `FileStorageFileDeleted` | file-storage.file.deleted | diff --git a/docs/Models/Requests/AccountingAttachmentsAllRequest.md b/docs/Models/Requests/AccountingAttachmentsAllRequest.md index 174a14994..d37c2c5c5 100644 --- a/docs/Models/Requests/AccountingAttachmentsAllRequest.md +++ b/docs/Models/Requests/AccountingAttachmentsAllRequest.md @@ -14,4 +14,5 @@ | `CompanyId` | *string* | :heavy_minus_sign: | The ID of the company to scope requests to. For connectors that support multi-company, this overrides the default company configured in connection settings. | 12345 | | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | -| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | \ No newline at end of file +| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingBillsAllRequest.md b/docs/Models/Requests/AccountingBillsAllRequest.md index 93ae545eb..63f3a993d 100644 --- a/docs/Models/Requests/AccountingBillsAllRequest.md +++ b/docs/Models/Requests/AccountingBillsAllRequest.md @@ -12,7 +12,7 @@ | `CompanyId` | *string* | :heavy_minus_sign: | The ID of the company to scope requests to. For connectors that support multi-company, this overrides the default company configured in connection settings. | 12345 | | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | -| `Filter` | [BillsFilter](../../Models/Components/BillsFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "paid",
"id_since": "1"
} | +| `Filter` | [BillsFilter](../../Models/Components/BillsFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "paid",
"id_since": "1",
"billed_since": "2020-09-30",
"due_since": "2020-09-30"
} | | `Sort` | [BillsSort](../../Models/Components/BillsSort.md) | :heavy_minus_sign: | Apply sorting | {
"by": "updated_at",
"direction": "desc"
} | | `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | | `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingCategoriesAllRequest.md b/docs/Models/Requests/AccountingCategoriesAllRequest.md index 35eb15ccd..605313ab3 100644 --- a/docs/Models/Requests/AccountingCategoriesAllRequest.md +++ b/docs/Models/Requests/AccountingCategoriesAllRequest.md @@ -13,4 +13,5 @@ | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | | `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | -| `Filter` | [CategoriesFilter](../../Models/Components/CategoriesFilter.md) | :heavy_minus_sign: | Apply filters | {
"type": "expense"
} | \ No newline at end of file +| `Filter` | [CategoriesFilter](../../Models/Components/CategoriesFilter.md) | :heavy_minus_sign: | Apply filters | {
"type": "expense"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingCompaniesAllRequest.md b/docs/Models/Requests/AccountingCompaniesAllRequest.md index 11a3fc791..10a1043f1 100644 --- a/docs/Models/Requests/AccountingCompaniesAllRequest.md +++ b/docs/Models/Requests/AccountingCompaniesAllRequest.md @@ -12,4 +12,5 @@ | `CompanyId` | *string* | :heavy_minus_sign: | The ID of the company to scope requests to. For connectors that support multi-company, this overrides the default company configured in connection settings. | 12345 | | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | -| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | \ No newline at end of file +| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingDepartmentsAllRequest.md b/docs/Models/Requests/AccountingDepartmentsAllRequest.md index 4e351a1eb..612ee8e13 100644 --- a/docs/Models/Requests/AccountingDepartmentsAllRequest.md +++ b/docs/Models/Requests/AccountingDepartmentsAllRequest.md @@ -13,4 +13,5 @@ | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | | `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | -| `Filter` | [AccountingDepartmentsFilter](../../Models/Components/AccountingDepartmentsFilter.md) | :heavy_minus_sign: | Apply filters | {
"subsidiary": "1"
} | \ No newline at end of file +| `Filter` | [AccountingDepartmentsFilter](../../Models/Components/AccountingDepartmentsFilter.md) | :heavy_minus_sign: | Apply filters | {
"subsidiary": "1"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingEmployeesAllRequest.md b/docs/Models/Requests/AccountingEmployeesAllRequest.md index dddd0f151..e8f35616b 100644 --- a/docs/Models/Requests/AccountingEmployeesAllRequest.md +++ b/docs/Models/Requests/AccountingEmployeesAllRequest.md @@ -12,4 +12,5 @@ | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | | `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | -| `Filter` | [AccountingEmployeesFilter](../../Models/Components/AccountingEmployeesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "active"
} | \ No newline at end of file +| `Filter` | [AccountingEmployeesFilter](../../Models/Components/AccountingEmployeesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "active"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingExpenseCategoriesAllRequest.md b/docs/Models/Requests/AccountingExpenseCategoriesAllRequest.md index 28a0f35ef..5d3826adc 100644 --- a/docs/Models/Requests/AccountingExpenseCategoriesAllRequest.md +++ b/docs/Models/Requests/AccountingExpenseCategoriesAllRequest.md @@ -12,4 +12,5 @@ | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | | `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | -| `Filter` | [ExpenseCategoriesFilter](../../Models/Components/ExpenseCategoriesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "active"
} | \ No newline at end of file +| `Filter` | [ExpenseCategoriesFilter](../../Models/Components/ExpenseCategoriesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "active"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingExpenseReportsAllRequest.md b/docs/Models/Requests/AccountingExpenseReportsAllRequest.md index 983902e96..857aa8142 100644 --- a/docs/Models/Requests/AccountingExpenseReportsAllRequest.md +++ b/docs/Models/Requests/AccountingExpenseReportsAllRequest.md @@ -12,4 +12,5 @@ | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | | `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | -| `Filter` | [ExpenseReportsFilter](../../Models/Components/ExpenseReportsFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "submitted"
} | \ No newline at end of file +| `Filter` | [ExpenseReportsFilter](../../Models/Components/ExpenseReportsFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "submitted"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingExpensesAllRequest.md b/docs/Models/Requests/AccountingExpensesAllRequest.md index 9dc56fa2b..024166bfd 100644 --- a/docs/Models/Requests/AccountingExpensesAllRequest.md +++ b/docs/Models/Requests/AccountingExpensesAllRequest.md @@ -12,4 +12,5 @@ | `CompanyId` | *string* | :heavy_minus_sign: | The ID of the company to scope requests to. For connectors that support multi-company, this overrides the default company configured in connection settings. | 12345 | | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | -| `Filter` | [ExpensesFilter](../../Models/Components/ExpensesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "draft",
"type": "expense"
} | \ No newline at end of file +| `Filter` | [ExpensesFilter](../../Models/Components/ExpensesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"status": "draft",
"type": "expense"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingLocationsAllRequest.md b/docs/Models/Requests/AccountingLocationsAllRequest.md index 814f14ee9..dbcf59b7b 100644 --- a/docs/Models/Requests/AccountingLocationsAllRequest.md +++ b/docs/Models/Requests/AccountingLocationsAllRequest.md @@ -13,4 +13,5 @@ | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | | `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | -| `Filter` | [AccountingLocationsFilter](../../Models/Components/AccountingLocationsFilter.md) | :heavy_minus_sign: | Apply filters | {
"subsidiary": "1"
} | \ No newline at end of file +| `Filter` | [AccountingLocationsFilter](../../Models/Components/AccountingLocationsFilter.md) | :heavy_minus_sign: | Apply filters | {
"subsidiary": "1"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingQuotesAllRequest.md b/docs/Models/Requests/AccountingQuotesAllRequest.md index 6673abb66..43d161186 100644 --- a/docs/Models/Requests/AccountingQuotesAllRequest.md +++ b/docs/Models/Requests/AccountingQuotesAllRequest.md @@ -12,4 +12,5 @@ | `CompanyId` | *string* | :heavy_minus_sign: | The ID of the company to scope requests to. For connectors that support multi-company, this overrides the default company configured in connection settings. | 12345 | | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | -| `Filter` | [QuotesFilter](../../Models/Components/QuotesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"created_since": "2020-09-30T07:43:32.000Z",
"number": "OIT00546"
} | \ No newline at end of file +| `Filter` | [QuotesFilter](../../Models/Components/QuotesFilter.md) | :heavy_minus_sign: | Apply filters | {
"updated_since": "2020-09-30T07:43:32.000Z",
"created_since": "2020-09-30T07:43:32.000Z",
"number": "OIT00546"
} | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/AccountingSubsidiariesAllRequest.md b/docs/Models/Requests/AccountingSubsidiariesAllRequest.md index 5a21854fd..e3e558e77 100644 --- a/docs/Models/Requests/AccountingSubsidiariesAllRequest.md +++ b/docs/Models/Requests/AccountingSubsidiariesAllRequest.md @@ -12,4 +12,5 @@ | `CompanyId` | *string* | :heavy_minus_sign: | The ID of the company to scope requests to. For connectors that support multi-company, this overrides the default company configured in connection settings. | 12345 | | `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | | `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | -| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | \ No newline at end of file +| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | \ No newline at end of file diff --git a/docs/Models/Requests/CrmListsAllRequest.md b/docs/Models/Requests/CrmListsAllRequest.md new file mode 100644 index 000000000..37987db93 --- /dev/null +++ b/docs/Models/Requests/CrmListsAllRequest.md @@ -0,0 +1,15 @@ +# CrmListsAllRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Raw` | *bool* | :heavy_minus_sign: | Include raw response. Mostly used for debugging purposes | | +| `ConsumerId` | *string* | :heavy_minus_sign: | ID of the consumer which you want to get or push data from | test-consumer | +| `AppId` | *string* | :heavy_minus_sign: | The ID of your Unify application | dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX | +| `ServiceId` | *string* | :heavy_minus_sign: | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. | salesforce | +| `Cursor` | *string* | :heavy_minus_sign: | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. | | +| `Limit` | *long* | :heavy_minus_sign: | Number of results to return. Minimum 1, Maximum 200, Default 20 | | +| `PassThrough` | Dictionary | :heavy_minus_sign: | Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads | {
"search": "San Francisco"
} | +| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | \ No newline at end of file diff --git a/docs/Models/Requests/CrmListsAllResponse.md b/docs/Models/Requests/CrmListsAllResponse.md new file mode 100644 index 000000000..fd0c7912f --- /dev/null +++ b/docs/Models/Requests/CrmListsAllResponse.md @@ -0,0 +1,10 @@ +# CrmListsAllResponse + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `HttpMeta` | [HTTPMetadata](../../Models/Components/HTTPMetadata.md) | :heavy_check_mark: | N/A | +| `GetListsResponse` | [GetListsResponse](../../Models/Components/GetListsResponse.md) | :heavy_minus_sign: | Lists | +| `UnexpectedErrorResponse` | [UnexpectedErrorResponse](../../Models/Components/UnexpectedErrorResponse.md) | :heavy_minus_sign: | Unexpected error | \ No newline at end of file diff --git a/docs/Models/Requests/CrmListsOneRequest.md b/docs/Models/Requests/CrmListsOneRequest.md new file mode 100644 index 000000000..68ef549fa --- /dev/null +++ b/docs/Models/Requests/CrmListsOneRequest.md @@ -0,0 +1,13 @@ +# CrmListsOneRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Id` | *string* | :heavy_check_mark: | ID of the record you are acting upon. | | +| `ConsumerId` | *string* | :heavy_minus_sign: | ID of the consumer which you want to get or push data from | test-consumer | +| `AppId` | *string* | :heavy_minus_sign: | The ID of your Unify application | dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX | +| `ServiceId` | *string* | :heavy_minus_sign: | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. | salesforce | +| `Raw` | *bool* | :heavy_minus_sign: | Include raw response. Mostly used for debugging purposes | | +| `Fields` | *string* | :heavy_minus_sign: | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation.

Example: `fields=name,email,addresses.city`

In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. | id,updated_at | \ No newline at end of file diff --git a/docs/Models/Requests/CrmListsOneResponse.md b/docs/Models/Requests/CrmListsOneResponse.md new file mode 100644 index 000000000..a77027e1f --- /dev/null +++ b/docs/Models/Requests/CrmListsOneResponse.md @@ -0,0 +1,10 @@ +# CrmListsOneResponse + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `HttpMeta` | [HTTPMetadata](../../Models/Components/HTTPMetadata.md) | :heavy_check_mark: | N/A | +| `GetListResponse` | [GetListResponse](../../Models/Components/GetListResponse.md) | :heavy_minus_sign: | List | +| `UnexpectedErrorResponse` | [UnexpectedErrorResponse](../../Models/Components/UnexpectedErrorResponse.md) | :heavy_minus_sign: | Unexpected error | \ No newline at end of file diff --git a/docs/sdks/attachments/README.md b/docs/sdks/attachments/README.md index 52f243107..aee1d4f44 100644 --- a/docs/sdks/attachments/README.md +++ b/docs/sdks/attachments/README.md @@ -21,6 +21,7 @@ List Attachments using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -34,6 +35,9 @@ AccountingAttachmentsAllRequest req = new AccountingAttachmentsAllRequest() { ServiceId = "salesforce", CompanyId = "12345", Fields = "id,updated_at", + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingAttachmentsAllResponse? res = await sdk.Accounting.Attachments.ListAsync(req); diff --git a/docs/sdks/categories/README.md b/docs/sdks/categories/README.md index efb01c489..c7b1bd451 100644 --- a/docs/sdks/categories/README.md +++ b/docs/sdks/categories/README.md @@ -18,6 +18,7 @@ List Categories using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -32,6 +33,9 @@ AccountingCategoriesAllRequest req = new AccountingCategoriesAllRequest() { Filter = new CategoriesFilter() { Type = CategoriesFilterType.Expense, }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingCategoriesAllResponse? res = await sdk.Accounting.Categories.ListAsync(req); diff --git a/docs/sdks/companies/README.md b/docs/sdks/companies/README.md index 541d482ee..317c2c254 100644 --- a/docs/sdks/companies/README.md +++ b/docs/sdks/companies/README.md @@ -17,6 +17,7 @@ List all companies accessible through the current connection. Only connectors th using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -28,6 +29,9 @@ AccountingCompaniesAllRequest req = new AccountingCompaniesAllRequest() { ServiceId = "salesforce", CompanyId = "12345", Fields = "id,updated_at", + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingCompaniesAllResponse? res = await sdk.Accounting.Companies.ListAsync(req); diff --git a/docs/sdks/connections/README.md b/docs/sdks/connections/README.md index 49aeb22e5..17b4526f1 100644 --- a/docs/sdks/connections/README.md +++ b/docs/sdks/connections/README.md @@ -140,12 +140,14 @@ VaultConnectionsUpdateRequest req = new VaultConnectionsUpdateRequest() { { "instance_url", "https://eu28.salesforce.com" }, { "api_key", "12345xxxxxx" }, }, - Metadata = new Dictionary() { - { "account", new Dictionary() { - { "name", "My Company" }, - { "id", "c01458a5-7276-41ce-bc19-639906b0450a" }, - } }, - { "plan", "enterprise" }, + Metadata = new ConnectionMetadataInput() { + AdditionalProperties = new Dictionary() { + { "account", new Dictionary() { + { "name", "My Company" }, + { "id", "c01458a5-7276-41ce-bc19-639906b0450a" }, + } }, + { "plan", "enterprise" }, + }, }, Configuration = new List() { new ConnectionConfiguration() { diff --git a/docs/sdks/connectionsettings/README.md b/docs/sdks/connectionsettings/README.md index 18016b639..9af077dd0 100644 --- a/docs/sdks/connectionsettings/README.md +++ b/docs/sdks/connectionsettings/README.md @@ -87,12 +87,14 @@ VaultConnectionSettingsUpdateRequest req = new VaultConnectionSettingsUpdateRequ { "instance_url", "https://eu28.salesforce.com" }, { "api_key", "12345xxxxxx" }, }, - Metadata = new Dictionary() { - { "account", new Dictionary() { - { "name", "My Company" }, - { "id", "c01458a5-7276-41ce-bc19-639906b0450a" }, - } }, - { "plan", "enterprise" }, + Metadata = new ConnectionMetadataInput() { + AdditionalProperties = new Dictionary() { + { "account", new Dictionary() { + { "name", "My Company" }, + { "id", "c01458a5-7276-41ce-bc19-639906b0450a" }, + } }, + { "plan", "enterprise" }, + }, }, Configuration = new List() { new ConnectionConfiguration() { diff --git a/docs/sdks/departments/README.md b/docs/sdks/departments/README.md index a30c8066b..85e2552b0 100644 --- a/docs/sdks/departments/README.md +++ b/docs/sdks/departments/README.md @@ -21,6 +21,7 @@ List Departments using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -35,6 +36,9 @@ AccountingDepartmentsAllRequest req = new AccountingDepartmentsAllRequest() { Filter = new AccountingDepartmentsFilter() { Subsidiary = "1", }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingDepartmentsAllResponse? res = await sdk.Accounting.Departments.ListAsync(req); diff --git a/docs/sdks/employees/README.md b/docs/sdks/employees/README.md index ae3ab1d05..95bea21a2 100644 --- a/docs/sdks/employees/README.md +++ b/docs/sdks/employees/README.md @@ -22,6 +22,7 @@ using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; using System; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -36,6 +37,9 @@ AccountingEmployeesAllRequest req = new AccountingEmployeesAllRequest() { UpdatedSince = System.DateTime.Parse("2020-09-30T07:43:32.000Z").ToUniversalTime(), Status = AccountingEmployeesFilterStatus.Active, }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingEmployeesAllResponse? res = await sdk.Accounting.Employees.ListAsync(req); diff --git a/docs/sdks/expensecategories/README.md b/docs/sdks/expensecategories/README.md index b92154d6a..0fdb3be32 100644 --- a/docs/sdks/expensecategories/README.md +++ b/docs/sdks/expensecategories/README.md @@ -22,6 +22,7 @@ using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; using System; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -36,6 +37,9 @@ AccountingExpenseCategoriesAllRequest req = new AccountingExpenseCategoriesAllRe UpdatedSince = System.DateTime.Parse("2020-09-30T07:43:32.000Z").ToUniversalTime(), Status = ExpenseCategoriesFilterStatus.Active, }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingExpenseCategoriesAllResponse? res = await sdk.Accounting.ExpenseCategories.ListAsync(req); diff --git a/docs/sdks/expensereports/README.md b/docs/sdks/expensereports/README.md index 1c21d0398..f9fb971ef 100644 --- a/docs/sdks/expensereports/README.md +++ b/docs/sdks/expensereports/README.md @@ -22,6 +22,7 @@ using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; using System; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -36,6 +37,9 @@ AccountingExpenseReportsAllRequest req = new AccountingExpenseReportsAllRequest( UpdatedSince = System.DateTime.Parse("2020-09-30T07:43:32.000Z").ToUniversalTime(), Status = ExpenseReportsFilterStatus.Submitted, }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingExpenseReportsAllResponse? res = await sdk.Accounting.ExpenseReports.ListAsync(req); @@ -126,6 +130,7 @@ AccountingExpenseReportsAddRequest req = new AccountingExpenseReportsAddRequest( Name = "Q1 2024", }, LineItems = new List() {}, + Reference = "INV-2024-001", Subsidiary = new LinkedSubsidiaryInput() { DisplayId = "123456", Name = "Acme Inc.", @@ -316,6 +321,7 @@ AccountingExpenseReportsUpdateRequest req = new AccountingExpenseReportsUpdateRe Name = "Q1 2024", }, LineItems = new List() {}, + Reference = "INV-2024-001", Subsidiary = new LinkedSubsidiaryInput() { DisplayId = "123456", Name = "Acme Inc.", diff --git a/docs/sdks/expenses/README.md b/docs/sdks/expenses/README.md index 04880628a..299c89aa0 100644 --- a/docs/sdks/expenses/README.md +++ b/docs/sdks/expenses/README.md @@ -22,6 +22,7 @@ using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; using System; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -37,6 +38,9 @@ AccountingExpensesAllRequest req = new AccountingExpensesAllRequest() { Status = ExpensesFilterStatus.Draft, Type = ExpensesFilterType.Expense, }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingExpensesAllResponse? res = await sdk.Accounting.Expenses.ListAsync(req); diff --git a/docs/sdks/lists/README.md b/docs/sdks/lists/README.md new file mode 100644 index 000000000..1b1b3db75 --- /dev/null +++ b/docs/sdks/lists/README.md @@ -0,0 +1,116 @@ +# Crm.Lists + +## Overview + +### Available Operations + +* [List](#list) - List lists +* [Get](#get) - Get list + +## List + +List lists + +### Example Usage + + +```csharp +using ApideckUnifySdk; +using ApideckUnifySdk.Models.Components; +using ApideckUnifySdk.Models.Requests; +using System.Collections.Generic; + +var sdk = new Apideck( + consumerId: "test-consumer", + appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX", + apiKey: "" +); + +CrmListsAllRequest req = new CrmListsAllRequest() { + ServiceId = "salesforce", + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, + Fields = "id,updated_at", +}; + +CrmListsAllResponse? res = await sdk.Crm.Lists.ListAsync(req); + +while(res != null) +{ + // handle items + + res = await res.Next!(); +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | +| `request` | [CrmListsAllRequest](../../Models/Requests/CrmListsAllRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[CrmListsAllResponse](../../Models/Requests/CrmListsAllResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | +| ApideckUnifySdk.Models.Errors.BadRequestResponse | 400 | application/json | +| ApideckUnifySdk.Models.Errors.UnauthorizedResponse | 401 | application/json | +| ApideckUnifySdk.Models.Errors.PaymentRequiredResponse | 402 | application/json | +| ApideckUnifySdk.Models.Errors.NotFoundResponse | 404 | application/json | +| ApideckUnifySdk.Models.Errors.UnprocessableResponse | 422 | application/json | +| ApideckUnifySdk.Models.Errors.APIException | 4XX, 5XX | \*/\* | + +## Get + +Get list + +### Example Usage + + +```csharp +using ApideckUnifySdk; +using ApideckUnifySdk.Models.Components; +using ApideckUnifySdk.Models.Requests; + +var sdk = new Apideck( + consumerId: "test-consumer", + appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX", + apiKey: "" +); + +CrmListsOneRequest req = new CrmListsOneRequest() { + Id = "", + ServiceId = "salesforce", + Fields = "id,updated_at", +}; + +var res = await sdk.Crm.Lists.GetAsync(req); + +// handle response +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | +| `request` | [CrmListsOneRequest](../../Models/Requests/CrmListsOneRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[CrmListsOneResponse](../../Models/Requests/CrmListsOneResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | +| ApideckUnifySdk.Models.Errors.BadRequestResponse | 400 | application/json | +| ApideckUnifySdk.Models.Errors.UnauthorizedResponse | 401 | application/json | +| ApideckUnifySdk.Models.Errors.PaymentRequiredResponse | 402 | application/json | +| ApideckUnifySdk.Models.Errors.NotFoundResponse | 404 | application/json | +| ApideckUnifySdk.Models.Errors.UnprocessableResponse | 422 | application/json | +| ApideckUnifySdk.Models.Errors.APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/locations/README.md b/docs/sdks/locations/README.md index 41708798a..fafd41c46 100644 --- a/docs/sdks/locations/README.md +++ b/docs/sdks/locations/README.md @@ -21,6 +21,7 @@ List Locations using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -35,6 +36,9 @@ AccountingLocationsAllRequest req = new AccountingLocationsAllRequest() { Filter = new AccountingLocationsFilter() { Subsidiary = "1", }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingLocationsAllResponse? res = await sdk.Accounting.Locations.ListAsync(req); diff --git a/docs/sdks/quotes/README.md b/docs/sdks/quotes/README.md index 0c4c113cd..686d0fe94 100644 --- a/docs/sdks/quotes/README.md +++ b/docs/sdks/quotes/README.md @@ -22,6 +22,7 @@ using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; using System; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -37,6 +38,9 @@ AccountingQuotesAllRequest req = new AccountingQuotesAllRequest() { CreatedSince = System.DateTime.Parse("2020-09-30T07:43:32.000Z").ToUniversalTime(), Number = "OIT00546", }, + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingQuotesAllResponse? res = await sdk.Accounting.Quotes.ListAsync(req); diff --git a/docs/sdks/subsidiaries/README.md b/docs/sdks/subsidiaries/README.md index 3322abbf8..c1f162450 100644 --- a/docs/sdks/subsidiaries/README.md +++ b/docs/sdks/subsidiaries/README.md @@ -21,6 +21,7 @@ List Subsidiaries using ApideckUnifySdk; using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Models.Requests; +using System.Collections.Generic; var sdk = new Apideck( consumerId: "test-consumer", @@ -32,6 +33,9 @@ AccountingSubsidiariesAllRequest req = new AccountingSubsidiariesAllRequest() { ServiceId = "salesforce", CompanyId = "12345", Fields = "id,updated_at", + PassThrough = new Dictionary() { + { "search", "San Francisco" }, + }, }; AccountingSubsidiariesAllResponse? res = await sdk.Accounting.Subsidiaries.ListAsync(req); diff --git a/src/ApideckUnifySdk/ApideckUnifySdk.csproj b/src/ApideckUnifySdk/ApideckUnifySdk.csproj index 11de4d47e..ccc472a53 100644 --- a/src/ApideckUnifySdk/ApideckUnifySdk.csproj +++ b/src/ApideckUnifySdk/ApideckUnifySdk.csproj @@ -3,7 +3,7 @@ true ApideckUnifySdk - 0.23.28 + 0.24.0 net8.0 Speakeasy Copyright (c) Speakeasy 2026 diff --git a/src/ApideckUnifySdk/Attachments.cs b/src/ApideckUnifySdk/Attachments.cs index 46b925abc..6725572bf 100644 --- a/src/ApideckUnifySdk/Attachments.cs +++ b/src/ApideckUnifySdk/Attachments.cs @@ -306,7 +306,8 @@ public async Task ListAsync( CompanyId = request.CompanyId, Cursor = nextCursor, Limit = request.Limit, - Fields = request.Fields + Fields = request.Fields, + PassThrough = request.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Categories.cs b/src/ApideckUnifySdk/Categories.cs index 7bb4b88b9..2341a52d4 100644 --- a/src/ApideckUnifySdk/Categories.cs +++ b/src/ApideckUnifySdk/Categories.cs @@ -228,7 +228,8 @@ public async Task ListAsync( Cursor = nextCursor, Limit = request?.Limit, Fields = request?.Fields, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Companies.cs b/src/ApideckUnifySdk/Companies.cs index a2db6f501..cfd65aff4 100644 --- a/src/ApideckUnifySdk/Companies.cs +++ b/src/ApideckUnifySdk/Companies.cs @@ -204,7 +204,8 @@ public async Task ListAsync( CompanyId = request?.CompanyId, Cursor = nextCursor, Limit = request?.Limit, - Fields = request?.Fields + Fields = request?.Fields, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Crm.cs b/src/ApideckUnifySdk/Crm.cs index 40e80fae2..7010afc29 100644 --- a/src/ApideckUnifySdk/Crm.cs +++ b/src/ApideckUnifySdk/Crm.cs @@ -26,6 +26,8 @@ public interface ICrm public IPipelines Pipelines { get; } + public ILists Lists { get; } + public INotes Notes { get; } public IUsers Users { get; } @@ -75,6 +77,12 @@ public class Crm: ICrm /// public IPipelines Pipelines { get; private set; } + /// + /// Lists SubSDK. + /// + /// + public ILists Lists { get; private set; } + /// /// Notes SubSDK. /// @@ -113,6 +121,7 @@ public Crm(SDKConfig config) Opportunities = new Opportunities(SDKConfiguration); Leads = new Leads(SDKConfiguration); Pipelines = new Pipelines(SDKConfiguration); + Lists = new Lists(SDKConfiguration); Notes = new Notes(SDKConfiguration); Users = new Users(SDKConfiguration); Activities = new Activities(SDKConfiguration); diff --git a/src/ApideckUnifySdk/Departments.cs b/src/ApideckUnifySdk/Departments.cs index f1a29b695..e95679093 100644 --- a/src/ApideckUnifySdk/Departments.cs +++ b/src/ApideckUnifySdk/Departments.cs @@ -297,7 +297,8 @@ public async Task ListAsync( Cursor = nextCursor, Limit = request?.Limit, Fields = request?.Fields, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Employees.cs b/src/ApideckUnifySdk/Employees.cs index cbb28de79..3c2c59057 100644 --- a/src/ApideckUnifySdk/Employees.cs +++ b/src/ApideckUnifySdk/Employees.cs @@ -296,7 +296,8 @@ public async Task ListAsync( Cursor = nextCursor, Limit = request?.Limit, Fields = request?.Fields, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/ExpenseCategories.cs b/src/ApideckUnifySdk/ExpenseCategories.cs index 1926f89b3..5b03caa44 100644 --- a/src/ApideckUnifySdk/ExpenseCategories.cs +++ b/src/ApideckUnifySdk/ExpenseCategories.cs @@ -296,7 +296,8 @@ public async Task ListAsync( Cursor = nextCursor, Limit = request?.Limit, Fields = request?.Fields, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/ExpenseReports.cs b/src/ApideckUnifySdk/ExpenseReports.cs index b82484906..d1dbc5675 100644 --- a/src/ApideckUnifySdk/ExpenseReports.cs +++ b/src/ApideckUnifySdk/ExpenseReports.cs @@ -296,7 +296,8 @@ public async Task ListAsync( Cursor = nextCursor, Limit = request?.Limit, Fields = request?.Fields, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Expenses.cs b/src/ApideckUnifySdk/Expenses.cs index 19de28553..00ee20a1f 100644 --- a/src/ApideckUnifySdk/Expenses.cs +++ b/src/ApideckUnifySdk/Expenses.cs @@ -296,7 +296,8 @@ public async Task ListAsync( CompanyId = request?.CompanyId, Cursor = nextCursor, Limit = request?.Limit, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Lists.cs b/src/ApideckUnifySdk/Lists.cs new file mode 100644 index 000000000..05f7fd242 --- /dev/null +++ b/src/ApideckUnifySdk/Lists.cs @@ -0,0 +1,689 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk +{ + using ApideckUnifySdk.Hooks; + using ApideckUnifySdk.Models.Components; + using ApideckUnifySdk.Models.Errors; + using ApideckUnifySdk.Models.Requests; + using ApideckUnifySdk.Utils; + using ApideckUnifySdk.Utils.Retries; + using Newtonsoft.Json; + using Newtonsoft.Json.Linq; + using System; + using System.Collections.Generic; + using System.Linq; + using System.Net.Http; + using System.Net.Http.Headers; + using System.Threading.Tasks; + + public interface ILists + { + /// + /// List lists. + /// + /// + /// List lists. + /// + /// A parameter. + /// The retry configuration to use for this operation. + /// An awaitable task that returns a response envelope when completed. + /// The HTTP request failed due to network issues. + /// The response body could not be deserialized. + /// Bad Request. Thrown when the API returns a 400 response. + /// Unauthorized. Thrown when the API returns a 401 response. + /// Payment Required. Thrown when the API returns a 402 response. + /// The specified resource was not found. Thrown when the API returns a 404 response. + /// Unprocessable. Thrown when the API returns a 422 response. + /// Default API Exception. Thrown when the API returns a 4XX or 5XX response. + public Task ListAsync(CrmListsAllRequest? request = null, RetryConfig? retryConfig = null); + + /// + /// Get list. + /// + /// + /// Get list. + /// + /// A parameter. + /// The retry configuration to use for this operation. + /// An awaitable task that returns a response envelope when completed. + /// The required parameter is null. + /// The HTTP request failed due to network issues. + /// The response body could not be deserialized. + /// Bad Request. Thrown when the API returns a 400 response. + /// Unauthorized. Thrown when the API returns a 401 response. + /// Payment Required. Thrown when the API returns a 402 response. + /// The specified resource was not found. Thrown when the API returns a 404 response. + /// Unprocessable. Thrown when the API returns a 422 response. + /// Default API Exception. Thrown when the API returns a 4XX or 5XX response. + public Task GetAsync(CrmListsOneRequest request, RetryConfig? retryConfig = null); + } + + public class Lists: ILists + { + /// + /// SDK Configuration. + /// + /// + public SDKConfig SDKConfiguration { get; private set; } + + public Lists(SDKConfig config) + { + SDKConfiguration = config; + } + + /// + /// List lists. + /// + /// + /// List lists. + /// + /// A parameter. + /// The retry configuration to use for this operation. + /// An awaitable task that returns a response envelope when completed. + /// The HTTP request failed due to network issues. + /// The response body could not be deserialized. + /// Bad Request. Thrown when the API returns a 400 response. + /// Unauthorized. Thrown when the API returns a 401 response. + /// Payment Required. Thrown when the API returns a 402 response. + /// The specified resource was not found. Thrown when the API returns a 404 response. + /// Unprocessable. Thrown when the API returns a 422 response. + /// Default API Exception. Thrown when the API returns a 4XX or 5XX response. + public async Task ListAsync( + CrmListsAllRequest? request = null, + RetryConfig? retryConfig = null + ) + { + if (request == null) + { + request = new CrmListsAllRequest(); + } + request.ConsumerId ??= SDKConfiguration.ConsumerId; + request.AppId ??= SDKConfiguration.AppId; + + string baseUrl = this.SDKConfiguration.GetTemplatedServerUrl(); + var urlString = URLBuilder.Build(baseUrl, "/crm/lists", request, null); + + var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString); + httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent); + HeaderSerializer.PopulateHeaders(ref httpRequest, request); + + if (!httpRequest.Headers.Contains("Accept")) + { + httpRequest.Headers.Add("Accept", "application/json"); + } + + if (SDKConfiguration.SecuritySource != null) + { + httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest); + } + + var hookCtx = new HookContext(SDKConfiguration, baseUrl, "crm.listsAll", null, SDKConfiguration.SecuritySource); + + httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest); + if (retryConfig == null) + { + if (this.SDKConfiguration.RetryConfig != null) + { + retryConfig = this.SDKConfiguration.RetryConfig; + } + else + { + var backoff = new BackoffStrategy( + initialIntervalMs: 500L, + maxIntervalMs: 60000L, + maxElapsedTimeMs: 900000L, + exponent: 1.5 + ); + retryConfig = new RetryConfig( + strategy: RetryConfig.RetryStrategy.BACKOFF, + backoff: backoff, + retryConnectionErrors: true + ); + } + } + + List statusCodes = new List + { + "408", + "500", + "502", + "503", + "504", + }; + + Func> retrySend = async () => + { + var _httpRequest = await SDKConfiguration.Client.CloneAsync(httpRequest); + return await SDKConfiguration.Client.SendAsync(_httpRequest); + }; + var retries = new ApideckUnifySdk.Utils.Retries.Retries(retrySend, retryConfig, statusCodes); + + HttpResponseMessage httpResponse; + try + { + httpResponse = await retries.Run(); + int _statusCode = (int)httpResponse.StatusCode; + + if (_statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600) + { + var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), httpResponse, null); + if (_httpResponse != null) + { + httpResponse = _httpResponse; + } + } + } + catch (Exception _hookError) + { + var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), null, _hookError); + if (_httpResponse != null) + { + httpResponse = _httpResponse; + } + else + { + throw; + } + } + + httpResponse = await this.SDKConfiguration.Hooks.AfterSuccessAsync(new AfterSuccessContext(hookCtx), httpResponse); + + Func> nextFunc = async delegate() + { + var body = JObject.Parse(await httpResponse.Content.ReadAsStringAsync()); + var nextCursorToken = body.SelectToken("$.meta.cursors.next"); + + if(nextCursorToken == null) + { + return null; + } + + var nextCursor = nextCursorToken.Value(); + if (string.IsNullOrWhiteSpace(nextCursor)) + { + return null; + } + + var newRequest = new CrmListsAllRequest + { + Raw = request?.Raw, + ConsumerId = request?.ConsumerId, + AppId = request?.AppId, + ServiceId = request?.ServiceId, + Cursor = nextCursor, + Limit = request?.Limit, + PassThrough = request?.PassThrough, + Fields = request?.Fields + }; + + return await ListAsync ( + request: newRequest, + retryConfig: retryConfig + ); + }; + + var contentType = httpResponse.Content.Headers.ContentType?.MediaType; + int responseStatusCode = (int)httpResponse.StatusCode; + if(responseStatusCode == 200) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + GetListsResponse obj; + try + { + obj = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Include); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into GetListsResponse.", httpRequest, httpResponse, httpResponseBody, ex); + } + + var response = new CrmListsAllResponse() + { + HttpMeta = new Models.Components.HTTPMetadata() + { + Response = httpResponse, + Request = httpRequest + }, + Next = nextFunc + }; + response.GetListsResponse = obj; + return response; + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 400) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + BadRequestResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Include); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into BadRequestResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new BadRequestResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 401) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + UnauthorizedResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Include); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into UnauthorizedResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new UnauthorizedResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 402) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + PaymentRequiredResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Include); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into PaymentRequiredResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new PaymentRequiredResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 404) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + NotFoundResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Include); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into NotFoundResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new NotFoundResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 422) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + UnprocessableResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Include); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into UnprocessableResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new UnprocessableResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode >= 400 && responseStatusCode < 500) + { + throw new Models.Errors.APIException("API error occurred", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode >= 500 && responseStatusCode < 600) + { + throw new Models.Errors.APIException("API error occurred", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + UnexpectedErrorResponse obj; + try + { + obj = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Include); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into UnexpectedErrorResponse.", httpRequest, httpResponse, httpResponseBody, ex); + } + + var response = new CrmListsAllResponse() + { + HttpMeta = new Models.Components.HTTPMetadata() + { + Response = httpResponse, + Request = httpRequest + }, + Next = nextFunc + }; + response.UnexpectedErrorResponse = obj; + return response; + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + } + + + /// + /// Get list. + /// + /// + /// Get list. + /// + /// A parameter. + /// The retry configuration to use for this operation. + /// An awaitable task that returns a response envelope when completed. + /// The required parameter is null. + /// The HTTP request failed due to network issues. + /// The response body could not be deserialized. + /// Bad Request. Thrown when the API returns a 400 response. + /// Unauthorized. Thrown when the API returns a 401 response. + /// Payment Required. Thrown when the API returns a 402 response. + /// The specified resource was not found. Thrown when the API returns a 404 response. + /// Unprocessable. Thrown when the API returns a 422 response. + /// Default API Exception. Thrown when the API returns a 4XX or 5XX response. + public async Task GetAsync(CrmListsOneRequest request, RetryConfig? retryConfig = null) + { + if (request == null) throw new ArgumentNullException(nameof(request)); + request.ConsumerId ??= SDKConfiguration.ConsumerId; + request.AppId ??= SDKConfiguration.AppId; + + string baseUrl = this.SDKConfiguration.GetTemplatedServerUrl(); + var urlString = URLBuilder.Build(baseUrl, "/crm/lists/{id}", request, null); + + var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString); + httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent); + HeaderSerializer.PopulateHeaders(ref httpRequest, request); + + if (!httpRequest.Headers.Contains("Accept")) + { + httpRequest.Headers.Add("Accept", "application/json"); + } + + if (SDKConfiguration.SecuritySource != null) + { + httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest); + } + + var hookCtx = new HookContext(SDKConfiguration, baseUrl, "crm.listsOne", null, SDKConfiguration.SecuritySource); + + httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest); + if (retryConfig == null) + { + if (this.SDKConfiguration.RetryConfig != null) + { + retryConfig = this.SDKConfiguration.RetryConfig; + } + else + { + var backoff = new BackoffStrategy( + initialIntervalMs: 500L, + maxIntervalMs: 60000L, + maxElapsedTimeMs: 900000L, + exponent: 1.5 + ); + retryConfig = new RetryConfig( + strategy: RetryConfig.RetryStrategy.BACKOFF, + backoff: backoff, + retryConnectionErrors: true + ); + } + } + + List statusCodes = new List + { + "408", + "500", + "502", + "503", + "504", + }; + + Func> retrySend = async () => + { + var _httpRequest = await SDKConfiguration.Client.CloneAsync(httpRequest); + return await SDKConfiguration.Client.SendAsync(_httpRequest); + }; + var retries = new ApideckUnifySdk.Utils.Retries.Retries(retrySend, retryConfig, statusCodes); + + HttpResponseMessage httpResponse; + try + { + httpResponse = await retries.Run(); + int _statusCode = (int)httpResponse.StatusCode; + + if (_statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600) + { + var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), httpResponse, null); + if (_httpResponse != null) + { + httpResponse = _httpResponse; + } + } + } + catch (Exception _hookError) + { + var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), null, _hookError); + if (_httpResponse != null) + { + httpResponse = _httpResponse; + } + else + { + throw; + } + } + + httpResponse = await this.SDKConfiguration.Hooks.AfterSuccessAsync(new AfterSuccessContext(hookCtx), httpResponse); + + var contentType = httpResponse.Content.Headers.ContentType?.MediaType; + int responseStatusCode = (int)httpResponse.StatusCode; + if(responseStatusCode == 200) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + GetListResponse obj; + try + { + obj = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Ignore); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into GetListResponse.", httpRequest, httpResponse, httpResponseBody, ex); + } + + var response = new CrmListsOneResponse() + { + HttpMeta = new Models.Components.HTTPMetadata() + { + Response = httpResponse, + Request = httpRequest + } + }; + response.GetListResponse = obj; + return response; + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 400) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + BadRequestResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Ignore); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into BadRequestResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new BadRequestResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 401) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + UnauthorizedResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Ignore); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into UnauthorizedResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new UnauthorizedResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 402) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + PaymentRequiredResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Ignore); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into PaymentRequiredResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new PaymentRequiredResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 404) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + NotFoundResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Ignore); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into NotFoundResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new NotFoundResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode == 422) + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + UnprocessableResponsePayload payload; + try + { + payload = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Ignore); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into UnprocessableResponsePayload.", httpRequest, httpResponse, httpResponseBody, ex); + } + + throw new UnprocessableResponse(payload, httpRequest, httpResponse, httpResponseBody); + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode >= 400 && responseStatusCode < 500) + { + throw new Models.Errors.APIException("API error occurred", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else if(responseStatusCode >= 500 && responseStatusCode < 600) + { + throw new Models.Errors.APIException("API error occurred", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + else + { + if(Utilities.IsContentTypeMatch("application/json", contentType)) + { + var httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); + UnexpectedErrorResponse obj; + try + { + obj = ResponseBodyDeserializer.DeserializeNotNull(httpResponseBody, NullValueHandling.Ignore); + } + catch (Exception ex) + { + throw new ResponseValidationException("Failed to deserialize response body into UnexpectedErrorResponse.", httpRequest, httpResponse, httpResponseBody, ex); + } + + var response = new CrmListsOneResponse() + { + HttpMeta = new Models.Components.HTTPMetadata() + { + Response = httpResponse, + Request = httpRequest + } + }; + response.UnexpectedErrorResponse = obj; + return response; + } + + throw new Models.Errors.APIException("Unknown content type received", httpRequest, httpResponse, await httpResponse.Content.ReadAsStringAsync()); + } + } + + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Locations.cs b/src/ApideckUnifySdk/Locations.cs index 6989efdcf..588addfbb 100644 --- a/src/ApideckUnifySdk/Locations.cs +++ b/src/ApideckUnifySdk/Locations.cs @@ -297,7 +297,8 @@ public async Task ListAsync( Cursor = nextCursor, Limit = request?.Limit, Fields = request?.Fields, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Models/Components/BillsFilter.cs b/src/ApideckUnifySdk/Models/Components/BillsFilter.cs index b11743602..1390f350d 100644 --- a/src/ApideckUnifySdk/Models/Components/BillsFilter.cs +++ b/src/ApideckUnifySdk/Models/Components/BillsFilter.cs @@ -12,6 +12,7 @@ namespace ApideckUnifySdk.Models.Components using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; using Newtonsoft.Json; + using NodaTime; using System; using System.Collections.Concurrent; using System.Collections.Generic; @@ -28,6 +29,18 @@ public class BillsFilter [SpeakeasyMetadata("queryParam:name=updated_since")] public DateTime? UpdatedSince { get; set; } + /// + /// Return bills with a document date (`bill_date`) on or after the given date (YYYY-MM-DD). + /// + [SpeakeasyMetadata("queryParam:name=billed_since")] + public LocalDate? BilledSince { get; set; } + + /// + /// Return bills with a due date (`due_date`) on or after the given date (YYYY-MM-DD). + /// + [SpeakeasyMetadata("queryParam:name=due_since")] + public LocalDate? DueSince { get; set; } + /// /// Filter by bill status. /// diff --git a/src/ApideckUnifySdk/Models/Components/By.cs b/src/ApideckUnifySdk/Models/Components/By.cs index 7236b51e5..db91b1da7 100644 --- a/src/ApideckUnifySdk/Models/Components/By.cs +++ b/src/ApideckUnifySdk/Models/Components/By.cs @@ -51,7 +51,7 @@ public static By Of(string value) } public static implicit operator By(string value) => Of(value); - public static implicit operator string(By by) => by.Value; + public static implicit operator string(By byvar) => byvar.Value; public static By[] Values() { diff --git a/src/ApideckUnifySdk/Models/Components/Connection.cs b/src/ApideckUnifySdk/Models/Components/Connection.cs index e323c6639..3acfe44e7 100644 --- a/src/ApideckUnifySdk/Models/Components/Connection.cs +++ b/src/ApideckUnifySdk/Models/Components/Connection.cs @@ -122,7 +122,7 @@ public class Connection /// Attach your own consumer specific metadata. /// [JsonProperty("metadata")] - public Dictionary? Metadata { get; set; } = null; + public ConnectionMetadata? Metadata { get; set; } = null; /// /// The settings that are wanted to create a connection. diff --git a/src/ApideckUnifySdk/Models/Components/ConnectionInput.cs b/src/ApideckUnifySdk/Models/Components/ConnectionInput.cs index 1311910ae..6fd06b10e 100644 --- a/src/ApideckUnifySdk/Models/Components/ConnectionInput.cs +++ b/src/ApideckUnifySdk/Models/Components/ConnectionInput.cs @@ -35,7 +35,7 @@ public class ConnectionInput /// Attach your own consumer specific metadata. /// [JsonProperty("metadata")] - public Dictionary? Metadata { get; set; } = null; + public ConnectionMetadataInput? Metadata { get; set; } = null; [JsonProperty("configuration")] public List? Configuration { get; set; } diff --git a/src/ApideckUnifySdk/Models/Components/ConnectionMetadata.cs b/src/ApideckUnifySdk/Models/Components/ConnectionMetadata.cs new file mode 100644 index 000000000..8afc8b1ac --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/ConnectionMetadata.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System.Collections.Generic; + + /// + /// Attach your own consumer specific metadata. + /// + public class ConnectionMetadata + { + /// + /// Normalized identifier of the authorized organization, copied from the connector-specific setting (e.g. Xero tenant_id, QuickBooks realm_id, NetSuite account_id). + /// + [JsonProperty("company_id")] + public string? CompanyId { get; set; } + + [JsonProperty("additionalProperties")] + public Dictionary? AdditionalProperties { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/ConnectionMetadataInput.cs b/src/ApideckUnifySdk/Models/Components/ConnectionMetadataInput.cs new file mode 100644 index 000000000..41c7fbda5 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/ConnectionMetadataInput.cs @@ -0,0 +1,24 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System.Collections.Generic; + + /// + /// Attach your own consumer specific metadata. + /// + public class ConnectionMetadataInput + { + [JsonProperty("additionalProperties")] + public Dictionary? AdditionalProperties { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/Connector.cs b/src/ApideckUnifySdk/Models/Components/Connector.cs index eda24c0b9..d52932962 100644 --- a/src/ApideckUnifySdk/Models/Components/Connector.cs +++ b/src/ApideckUnifySdk/Models/Components/Connector.cs @@ -175,6 +175,12 @@ public class Connector [JsonProperty("docs")] public List? Docs { get; set; } + /// + /// Editorial overview metadata for the connector, used to render the connector's Overview documentation (implementation difficulty, partnership requirements, sandbox availability, and other at-a-glance facts). + /// + [JsonProperty("overview")] + public ConnectorOverview? Overview { get; set; } + [JsonProperty("tls_support")] public TlsSupport? TlsSupport { get; set; } } diff --git a/src/ApideckUnifySdk/Models/Components/ConnectorOverview.cs b/src/ApideckUnifySdk/Models/Components/ConnectorOverview.cs new file mode 100644 index 000000000..e9438bd3d --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/ConnectorOverview.cs @@ -0,0 +1,169 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Models.Components; + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System; + using System.Collections.Concurrent; + using System.Collections.Generic; + using System.Linq; + + /// + /// Editorial overview metadata for the connector, used to render the connector's Overview documentation (implementation difficulty, partnership requirements, sandbox availability, and other at-a-glance facts). + /// + public class ConnectorOverview + { + /// + /// Whether this connector's overview content is still in beta. + /// + [JsonProperty("beta")] + public bool? Beta { get; set; } + + /// + /// Whether this connector is demo-only. + /// + [JsonProperty("demo")] + public bool? Demo { get; set; } + + /// + /// At-a-glance implementation difficulty rating. + /// + [JsonProperty("difficulty")] + public Difficulty Difficulty { get; set; } = default!; + + /// + /// Short explanation of why the connector has the given difficulty rating. + /// + [JsonProperty("difficulty_reason")] + public string DifficultyReason { get; set; } = default!; + + /// + /// Notes on the connector's authentication flow. + /// + [JsonProperty("authentication_note")] + public string? AuthenticationNote { get; set; } + + /// + /// Description of webhook support for this connector. + /// + [JsonProperty("webhooks")] + public string? Webhooks { get; set; } + + /// + /// Whether a partnership with the downstream provider is required. + /// + [JsonProperty("partnership_required")] + public bool PartnershipRequired { get; set; } = default!; + + /// + /// URL to the downstream provider's partnership/developer portal. + /// + [JsonProperty("partnership_url")] + public string? PartnershipUrl { get; set; } + + /// + /// Additional notes about the partnership requirement. + /// + [JsonProperty("partnership_note")] + public string? PartnershipNote { get; set; } + + /// + /// Name of the downstream provider's developer portal. + /// + [JsonProperty("partnership_portal_name")] + public string? PartnershipPortalName { get; set; } + + /// + /// Whether Apideck-managed credentials are available for this connector. + /// + [JsonProperty("apideck_credentials_available")] + public bool ApideckCredentialsAvailable { get; set; } = default!; + + /// + /// Additional notes about Apideck-managed credentials. + /// + [JsonProperty("apideck_credentials_note")] + public string? ApideckCredentialsNote { get; set; } + + /// + /// Notes on costs associated with using this connector. + /// + [JsonProperty("costs")] + public string? Costs { get; set; } + + /// + /// Notes on rate limits enforced by the downstream provider. + /// + [JsonProperty("rate_limits")] + public string? RateLimits { get; set; } + + /// + /// The type of downstream account required to use this connector. + /// + [JsonProperty("account_type_required")] + public string AccountTypeRequired { get; set; } = default!; + + /// + /// Whether a sandbox environment is available for this connector. + /// + [JsonProperty("sandbox_available")] + public bool SandboxAvailable { get; set; } = default!; + + /// + /// URL to the downstream provider's sandbox environment. + /// + [JsonProperty("sandbox_url")] + public string? SandboxUrl { get; set; } + + /// + /// Additional notes about the sandbox environment. + /// + [JsonProperty("sandbox_note")] + public string? SandboxNote { get; set; } + + /// + /// The access level a consumer's end user needs to authorize the connection. + /// + [JsonProperty("consumer_access_level")] + public string ConsumerAccessLevel { get; set; } = default!; + + /// + /// Flat list of important facts about this connector. + /// + [JsonProperty("important_to_know")] + public List? ImportantToKnow { get; set; } + + /// + /// Grouping of the connector's supported resources by category. + /// + [JsonProperty("supported_resource_categories")] + public List? SupportedResourceCategories { get; set; } + + /// + /// Links to external guides relevant to this connector. + /// + [JsonProperty("external_guides")] + public List? ExternalGuides { get; set; } + + /// + /// Who is responsible for each area of the integration. Cell values are display strings (e.g. "✓", "Docs provided"), not booleans. + /// + [JsonProperty("responsibility_matrix")] + public List? ResponsibilityMatrix { get; set; } + + /// + /// Notes about the different environments (sandbox, production, etc.) available for this connector. + /// + [JsonProperty("environment_notes")] + public List? EnvironmentNotes { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/ConsumerConnection.cs b/src/ApideckUnifySdk/Models/Components/ConsumerConnection.cs index 310e29ab1..afb154261 100644 --- a/src/ApideckUnifySdk/Models/Components/ConsumerConnection.cs +++ b/src/ApideckUnifySdk/Models/Components/ConsumerConnection.cs @@ -65,7 +65,7 @@ public class ConsumerConnection /// Attach your own consumer specific metadata. /// [JsonProperty("metadata")] - public Dictionary? Metadata { get; set; } = null; + public Metadata? Metadata { get; set; } = null; [JsonProperty("created_at")] public string? CreatedAt { get; set; } diff --git a/src/ApideckUnifySdk/Models/Components/Difficulty.cs b/src/ApideckUnifySdk/Models/Components/Difficulty.cs new file mode 100644 index 000000000..13900413d --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/Difficulty.cs @@ -0,0 +1,81 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System; + using System.Collections.Concurrent; + using System.Collections.Generic; + using System.Linq; + + /// + /// At-a-glance implementation difficulty rating. + /// + [JsonConverter(typeof(OpenEnumConverter))] + public class Difficulty : IEquatable + { + public static readonly Difficulty Straightforward = new Difficulty("straightforward"); + public static readonly Difficulty Moderate = new Difficulty("moderate"); + public static readonly Difficulty Involved = new Difficulty("involved"); + public static readonly Difficulty HighlyComplex = new Difficulty("highly_complex"); + + private static readonly Dictionary _knownValues = + new Dictionary () + { + ["straightforward"] = Straightforward, + ["moderate"] = Moderate, + ["involved"] = Involved, + ["highly_complex"] = HighlyComplex + }; + + private static readonly ConcurrentDictionary _values = + new ConcurrentDictionary(_knownValues); + + private Difficulty(string value) + { + if (value == null) throw new ArgumentNullException(nameof(value)); + Value = value; + } + + public string Value { get; } + + public static Difficulty Of(string value) + { + return _values.GetOrAdd(value, _ => new Difficulty(value)); + } + + public static implicit operator Difficulty(string value) => Of(value); + public static implicit operator string(Difficulty difficulty) => difficulty.Value; + + public static Difficulty[] Values() + { + return _values.Values.ToArray(); + } + + public override string ToString() => Value.ToString(); + + public bool IsKnown() + { + return _knownValues.ContainsKey(Value); + } + + public override bool Equals(object? obj) => Equals(obj as Difficulty); + + public bool Equals(Difficulty? other) + { + if (ReferenceEquals(this, other)) return true; + if (other is null) return false; + return string.Equals(Value, other.Value); + } + + public override int GetHashCode() => Value.GetHashCode(); + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/EnvironmentNotes.cs b/src/ApideckUnifySdk/Models/Components/EnvironmentNotes.cs new file mode 100644 index 000000000..97479dc0c --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/EnvironmentNotes.cs @@ -0,0 +1,29 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + + public class EnvironmentNotes + { + /// + /// Environment name. + /// + [JsonProperty("environment")] + public string Environment { get; set; } = default!; + + /// + /// Description of the environment. + /// + [JsonProperty("description")] + public string Description { get; set; } = default!; + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/ExpenseReport.cs b/src/ApideckUnifySdk/Models/Components/ExpenseReport.cs index 0a094fc1a..5a1a9d57f 100644 --- a/src/ApideckUnifySdk/Models/Components/ExpenseReport.cs +++ b/src/ApideckUnifySdk/Models/Components/ExpenseReport.cs @@ -137,6 +137,12 @@ public class ExpenseReport [JsonProperty("line_items")] public List LineItems { get; set; } = default!; + /// + /// Optional reference identifier for the transaction. + /// + [JsonProperty("reference")] + public string? Reference { get; set; } = null; + [JsonProperty("subsidiary")] public LinkedSubsidiary? Subsidiary { get; set; } = null; diff --git a/src/ApideckUnifySdk/Models/Components/ExpenseReportInput.cs b/src/ApideckUnifySdk/Models/Components/ExpenseReportInput.cs index e04604a90..66ba6a94a 100644 --- a/src/ApideckUnifySdk/Models/Components/ExpenseReportInput.cs +++ b/src/ApideckUnifySdk/Models/Components/ExpenseReportInput.cs @@ -131,6 +131,12 @@ public class ExpenseReportInput [JsonProperty("line_items")] public List LineItems { get; set; } = default!; + /// + /// Optional reference identifier for the transaction. + /// + [JsonProperty("reference")] + public string? Reference { get; set; } = null; + [JsonProperty("subsidiary")] public LinkedSubsidiaryInput? Subsidiary { get; set; } = null; diff --git a/src/ApideckUnifySdk/Models/Components/ExternalGuides.cs b/src/ApideckUnifySdk/Models/Components/ExternalGuides.cs new file mode 100644 index 000000000..86db49a88 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/ExternalGuides.cs @@ -0,0 +1,35 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + + public class ExternalGuides + { + /// + /// Guide title. + /// + [JsonProperty("title")] + public string Title { get; set; } = default!; + + /// + /// Guide URL. + /// + [JsonProperty("url")] + public string Url { get; set; } = default!; + + /// + /// Publisher of the guide. + /// + [JsonProperty("source")] + public string Source { get; set; } = default!; + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/GetListResponse.cs b/src/ApideckUnifySdk/Models/Components/GetListResponse.cs new file mode 100644 index 000000000..b3b16d017 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/GetListResponse.cs @@ -0,0 +1,67 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Models.Components; + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System.Collections.Generic; + + /// + /// List. + /// + public class GetListResponse + { + /// + /// HTTP Response Status Code. + /// + [JsonProperty("status_code")] + public long StatusCode { get; set; } = default!; + + /// + /// HTTP Response Status. + /// + [JsonProperty("status")] + public string Status { get; set; } = default!; + + /// + /// Apideck ID of service provider. + /// + [JsonProperty("service")] + public string Service { get; set; } = default!; + + /// + /// Unified API resource name. + /// + [JsonProperty("resource")] + public string Resource { get; set; } = default!; + + /// + /// Operation performed. + /// + [JsonProperty("operation")] + public string Operation { get; set; } = default!; + + [JsonProperty("data")] + public List Data { get; set; } = default!; + + /// + /// Response metadata. + /// + [JsonProperty("meta")] + public Meta? Meta { get; set; } + + /// + /// Raw response from the integration when raw=true query param is provided. + /// + [JsonProperty("_raw")] + public Dictionary? Raw { get; set; } = null; + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/GetListsResponse.cs b/src/ApideckUnifySdk/Models/Components/GetListsResponse.cs new file mode 100644 index 000000000..62c6e0e16 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/GetListsResponse.cs @@ -0,0 +1,73 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Models.Components; + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System.Collections.Generic; + + /// + /// Lists. + /// + public class GetListsResponse + { + /// + /// HTTP Response Status Code. + /// + [JsonProperty("status_code")] + public long StatusCode { get; set; } = default!; + + /// + /// HTTP Response Status. + /// + [JsonProperty("status")] + public string Status { get; set; } = default!; + + /// + /// Apideck ID of service provider. + /// + [JsonProperty("service")] + public string Service { get; set; } = default!; + + /// + /// Unified API resource name. + /// + [JsonProperty("resource")] + public string Resource { get; set; } = default!; + + /// + /// Operation performed. + /// + [JsonProperty("operation")] + public string Operation { get; set; } = default!; + + [JsonProperty("data")] + public List Data { get; set; } = default!; + + /// + /// Raw response from the integration when raw=true query param is provided. + /// + [JsonProperty("_raw")] + public Dictionary? Raw { get; set; } = null; + + /// + /// Response metadata. + /// + [JsonProperty("meta")] + public Meta? Meta { get; set; } + + /// + /// Links to navigate to previous or next pages through the API. + /// + [JsonProperty("links")] + public Links? Links { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/List.cs b/src/ApideckUnifySdk/Models/Components/List.cs new file mode 100644 index 000000000..620c76238 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/List.cs @@ -0,0 +1,136 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Models.Components; + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System; + using System.Collections.Concurrent; + using System.Collections.Generic; + using System.Linq; + + public class List + { + /// + /// The unique identifier of the List. + /// + [JsonProperty("id")] + public string Id { get; set; } = default!; + + /// + /// The name of the List. + /// + [JsonProperty("name")] + public string Name { get; set; } = default!; + + /// + /// The description of the List. + /// + [JsonProperty("description")] + public string? Description { get; set; } = null; + + /// + /// Whether the List is static (a fixed set of records) or dynamic (a saved segment that is automatically kept up to date based on filter criteria). + /// + [JsonProperty("type")] + public ListType? Type { get; set; } = null; + + /// + /// The visibility of the List. Which of these values a given connector can return depends on its native sharing model — see the connector-specific gotchas below for details. + /// + [JsonProperty("visibility")] + public ListVisibility? Visibility { get; set; } = null; + + /// + /// The unique identifier of the user who owns the List. + /// + [JsonProperty("owner_id")] + public string? OwnerId { get; set; } = null; + + /// + /// The filter criteria used to determine which records belong to a dynamic List. Shape is connector-native and passed through largely as-is (e.g. Close returns its own nested query-tree structure) rather than normalized to a common format. + /// + [JsonProperty("filter_criteria")] + public Dictionary? FilterCriteria { get; set; } = null; + + /// + /// The number of records currently in the List. + /// + [JsonProperty("record_count")] + public long? RecordCount { get; set; } = null; + + /// + /// The unique identifier of the folder the List is organized under. + /// + [JsonProperty("folder_id")] + public string? FolderId { get; set; } = null; + + /// + /// The type of CRM records the List contains. Normalized to a lowercase plural noun for the vendor's standard object types (e.g. contacts, companies, opportunities, leads, tickets, campaigns, tasks, events); for vendor-specific or custom object types the raw downstream identifier is passed through unchanged, following the connector's native casing (e.g. a HubSpot custom objectTypeId like 2-12345 or a Salesforce custom object API name), so a raw value may not always be distinguishable from a normalized one. This field is intentionally open-ended — no closed enum is enforced. + /// + [JsonProperty("object_type")] + public string? ObjectType { get; set; } = null; + + /// + /// Whether the List is dynamic, meaning its records are automatically kept up to date based on filter criteria. This is a boolean mirror of `type` (`true` when `type` is `dynamic`, `false` when `static`), provided for callers that prefer a boolean check over a string comparison. + /// + [JsonProperty("is_dynamic")] + public bool? IsDynamic { get; set; } = null; + + /// + /// Whether the List has been marked as a favorite. + /// + [JsonProperty("is_favorite")] + public bool? IsFavorite { get; set; } = null; + + /// + /// Whether the List is a default List. + /// + [JsonProperty("is_default")] + public bool? IsDefault { get; set; } = null; + + /// + /// Whether the List is a system-generated List. + /// + [JsonProperty("is_system")] + public bool? IsSystem { get; set; } = null; + + [JsonProperty("custom_fields")] + public List? CustomFields { get; set; } + + [JsonProperty("tags")] + public List? Tags { get; set; } = null; + + /// + /// The unique identifier of the user who last updated the List. + /// + [JsonProperty("updated_by")] + public string? UpdatedBy { get; set; } = null; + + /// + /// The unique identifier of the user who created the List. + /// + [JsonProperty("created_by")] + public string? CreatedBy { get; set; } = null; + + /// + /// The date and time when the List was last updated. + /// + [JsonProperty("updated_at")] + public DateTime? UpdatedAt { get; set; } = null; + + /// + /// The date and time when the List was created. + /// + [JsonProperty("created_at")] + public DateTime? CreatedAt { get; set; } = null; + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/ListType.cs b/src/ApideckUnifySdk/Models/Components/ListType.cs new file mode 100644 index 000000000..1f6a2ae3a --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/ListType.cs @@ -0,0 +1,77 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System; + using System.Collections.Concurrent; + using System.Collections.Generic; + using System.Linq; + + /// + /// Whether the List is static (a fixed set of records) or dynamic (a saved segment that is automatically kept up to date based on filter criteria). + /// + [JsonConverter(typeof(OpenEnumConverter))] + public class ListType : IEquatable + { + public static readonly ListType Static = new ListType("static"); + public static readonly ListType Dynamic = new ListType("dynamic"); + + private static readonly Dictionary _knownValues = + new Dictionary () + { + ["static"] = Static, + ["dynamic"] = Dynamic + }; + + private static readonly ConcurrentDictionary _values = + new ConcurrentDictionary(_knownValues); + + private ListType(string value) + { + if (value == null) throw new ArgumentNullException(nameof(value)); + Value = value; + } + + public string Value { get; } + + public static ListType Of(string value) + { + return _values.GetOrAdd(value, _ => new ListType(value)); + } + + public static implicit operator ListType(string value) => Of(value); + public static implicit operator string(ListType listtype) => listtype.Value; + + public static ListType[] Values() + { + return _values.Values.ToArray(); + } + + public override string ToString() => Value.ToString(); + + public bool IsKnown() + { + return _knownValues.ContainsKey(Value); + } + + public override bool Equals(object? obj) => Equals(obj as ListType); + + public bool Equals(ListType? other) + { + if (ReferenceEquals(this, other)) return true; + if (other is null) return false; + return string.Equals(Value, other.Value); + } + + public override int GetHashCode() => Value.GetHashCode(); + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/ListVisibility.cs b/src/ApideckUnifySdk/Models/Components/ListVisibility.cs new file mode 100644 index 000000000..6045494e6 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/ListVisibility.cs @@ -0,0 +1,79 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System; + using System.Collections.Concurrent; + using System.Collections.Generic; + using System.Linq; + + /// + /// The visibility of the List. Which of these values a given connector can return depends on its native sharing model — see the connector-specific gotchas below for details. + /// + [JsonConverter(typeof(OpenEnumConverter))] + public class ListVisibility : IEquatable + { + public static readonly ListVisibility Private = new ListVisibility("private"); + public static readonly ListVisibility Shared = new ListVisibility("shared"); + public static readonly ListVisibility Public = new ListVisibility("public"); + + private static readonly Dictionary _knownValues = + new Dictionary () + { + ["private"] = Private, + ["shared"] = Shared, + ["public"] = Public + }; + + private static readonly ConcurrentDictionary _values = + new ConcurrentDictionary(_knownValues); + + private ListVisibility(string value) + { + if (value == null) throw new ArgumentNullException(nameof(value)); + Value = value; + } + + public string Value { get; } + + public static ListVisibility Of(string value) + { + return _values.GetOrAdd(value, _ => new ListVisibility(value)); + } + + public static implicit operator ListVisibility(string value) => Of(value); + public static implicit operator string(ListVisibility listvisibility) => listvisibility.Value; + + public static ListVisibility[] Values() + { + return _values.Values.ToArray(); + } + + public override string ToString() => Value.ToString(); + + public bool IsKnown() + { + return _knownValues.ContainsKey(Value); + } + + public override bool Equals(object? obj) => Equals(obj as ListVisibility); + + public bool Equals(ListVisibility? other) + { + if (ReferenceEquals(this, other)) return true; + if (other is null) return false; + return string.Equals(Value, other.Value); + } + + public override int GetHashCode() => Value.GetHashCode(); + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/Metadata.cs b/src/ApideckUnifySdk/Models/Components/Metadata.cs new file mode 100644 index 000000000..49e7d95a7 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/Metadata.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System.Collections.Generic; + + /// + /// Attach your own consumer specific metadata. + /// + public class Metadata + { + /// + /// Normalized identifier of the authorized organization, copied from the connector-specific setting (e.g. Xero tenant_id, QuickBooks realm_id, NetSuite account_id). + /// + [JsonProperty("company_id")] + public string? CompanyId { get; set; } + + [JsonProperty("additionalProperties")] + public Dictionary? AdditionalProperties { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/ResponsibilityMatrix.cs b/src/ApideckUnifySdk/Models/Components/ResponsibilityMatrix.cs new file mode 100644 index 000000000..b00bee0f8 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/ResponsibilityMatrix.cs @@ -0,0 +1,41 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + + public class ResponsibilityMatrix + { + /// + /// The responsibility area. + /// + [JsonProperty("area")] + public string Area { get; set; } = default!; + + /// + /// Apideck's responsibility for this area. + /// + [JsonProperty("apideck")] + public string? Apideck { get; set; } + + /// + /// The consumer's responsibility for this area. + /// + [JsonProperty("consumer")] + public string? Consumer { get; set; } + + /// + /// The end customer's responsibility for this area. + /// + [JsonProperty("customer")] + public string? Customer { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/SupportedResourceCategories.cs b/src/ApideckUnifySdk/Models/Components/SupportedResourceCategories.cs new file mode 100644 index 000000000..e4fb7b781 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Components/SupportedResourceCategories.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Components +{ + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System.Collections.Generic; + + public class SupportedResourceCategories + { + /// + /// Category name. + /// + [JsonProperty("name")] + public string Name { get; set; } = default!; + + /// + /// Resource ids belonging to this category. + /// + [JsonProperty("resources")] + public List Resources { get; set; } = default!; + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Components/WebhookEventType.cs b/src/ApideckUnifySdk/Models/Components/WebhookEventType.cs index f76ce0e42..abc6efa0c 100644 --- a/src/ApideckUnifySdk/Models/Components/WebhookEventType.cs +++ b/src/ApideckUnifySdk/Models/Components/WebhookEventType.cs @@ -122,6 +122,9 @@ public class WebhookEventType : IEquatable public static readonly WebhookEventType HrisCompanyCreated = new WebhookEventType("hris.company.created"); public static readonly WebhookEventType HrisCompanyUpdated = new WebhookEventType("hris.company.updated"); public static readonly WebhookEventType HrisCompanyDeleted = new WebhookEventType("hris.company.deleted"); + public static readonly WebhookEventType HrisTimeOffRequestCreated = new WebhookEventType("hris.time-off-request.created"); + public static readonly WebhookEventType HrisTimeOffRequestUpdated = new WebhookEventType("hris.time-off-request.updated"); + public static readonly WebhookEventType HrisTimeOffRequestDeleted = new WebhookEventType("hris.time-off-request.deleted"); public static readonly WebhookEventType FileStorageFileCreated = new WebhookEventType("file-storage.file.created"); public static readonly WebhookEventType FileStorageFileUpdated = new WebhookEventType("file-storage.file.updated"); public static readonly WebhookEventType FileStorageFileDeleted = new WebhookEventType("file-storage.file.deleted"); @@ -260,6 +263,9 @@ public class WebhookEventType : IEquatable ["hris.company.created"] = HrisCompanyCreated, ["hris.company.updated"] = HrisCompanyUpdated, ["hris.company.deleted"] = HrisCompanyDeleted, + ["hris.time-off-request.created"] = HrisTimeOffRequestCreated, + ["hris.time-off-request.updated"] = HrisTimeOffRequestUpdated, + ["hris.time-off-request.deleted"] = HrisTimeOffRequestDeleted, ["file-storage.file.created"] = FileStorageFileCreated, ["file-storage.file.updated"] = FileStorageFileUpdated, ["file-storage.file.deleted"] = FileStorageFileDeleted, diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingAttachmentsAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingAttachmentsAllRequest.cs index a29e47d97..9dcd10cde 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingAttachmentsAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingAttachmentsAllRequest.cs @@ -78,5 +78,11 @@ public class AccountingAttachmentsAllRequest /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=fields")] public string? Fields { get; set; } = null; + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingCategoriesAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingCategoriesAllRequest.cs index 0c0809259..7df1a1f77 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingCategoriesAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingCategoriesAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingCategoriesAllRequest { @@ -67,5 +68,11 @@ public class AccountingCategoriesAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public CategoriesFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingCompaniesAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingCompaniesAllRequest.cs index 03b1e418b..4cebca6a1 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingCompaniesAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingCompaniesAllRequest.cs @@ -10,6 +10,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingCompaniesAllRequest { @@ -60,5 +61,11 @@ public class AccountingCompaniesAllRequest /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=fields")] public string? Fields { get; set; } = null; + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingDepartmentsAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingDepartmentsAllRequest.cs index 0c039655c..345446949 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingDepartmentsAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingDepartmentsAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingDepartmentsAllRequest { @@ -67,5 +68,11 @@ public class AccountingDepartmentsAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public AccountingDepartmentsFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingEmployeesAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingEmployeesAllRequest.cs index a2110f84e..9796ac1e8 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingEmployeesAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingEmployeesAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingEmployeesAllRequest { @@ -61,5 +62,11 @@ public class AccountingEmployeesAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public AccountingEmployeesFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingExpenseCategoriesAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingExpenseCategoriesAllRequest.cs index d92fb3a3c..d9ba8cb4d 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingExpenseCategoriesAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingExpenseCategoriesAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingExpenseCategoriesAllRequest { @@ -61,5 +62,11 @@ public class AccountingExpenseCategoriesAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public ExpenseCategoriesFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingExpenseReportsAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingExpenseReportsAllRequest.cs index fe2ca4604..aadf94f17 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingExpenseReportsAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingExpenseReportsAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingExpenseReportsAllRequest { @@ -61,5 +62,11 @@ public class AccountingExpenseReportsAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public ExpenseReportsFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingExpensesAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingExpensesAllRequest.cs index a659c7131..66ed16cf8 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingExpensesAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingExpensesAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingExpensesAllRequest { @@ -61,5 +62,11 @@ public class AccountingExpensesAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public ExpensesFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingLocationsAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingLocationsAllRequest.cs index daec69af3..30b1b1c10 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingLocationsAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingLocationsAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingLocationsAllRequest { @@ -67,5 +68,11 @@ public class AccountingLocationsAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public AccountingLocationsFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingQuotesAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingQuotesAllRequest.cs index fc771170e..a774dec5b 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingQuotesAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingQuotesAllRequest.cs @@ -11,6 +11,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Models.Components; using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingQuotesAllRequest { @@ -61,5 +62,11 @@ public class AccountingQuotesAllRequest /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=filter")] public QuotesFilter? Filter { get; set; } + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/AccountingSubsidiariesAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/AccountingSubsidiariesAllRequest.cs index eddd8f2e9..ed02fb4a8 100644 --- a/src/ApideckUnifySdk/Models/Requests/AccountingSubsidiariesAllRequest.cs +++ b/src/ApideckUnifySdk/Models/Requests/AccountingSubsidiariesAllRequest.cs @@ -10,6 +10,7 @@ namespace ApideckUnifySdk.Models.Requests { using ApideckUnifySdk.Utils; + using System.Collections.Generic; public class AccountingSubsidiariesAllRequest { @@ -60,5 +61,11 @@ public class AccountingSubsidiariesAllRequest /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=fields")] public string? Fields { get; set; } = null; + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } } } \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/CrmListsAllRequest.cs b/src/ApideckUnifySdk/Models/Requests/CrmListsAllRequest.cs new file mode 100644 index 000000000..e3758dcf3 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Requests/CrmListsAllRequest.cs @@ -0,0 +1,65 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Requests +{ + using ApideckUnifySdk.Utils; + using System.Collections.Generic; + + public class CrmListsAllRequest + { + /// + /// Include raw response. Mostly used for debugging purposes. + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=raw")] + public bool? Raw { get; set; } = false; + + /// + /// ID of the consumer which you want to get or push data from. + /// + [SpeakeasyMetadata("header:style=simple,explode=false,name=x-apideck-consumer-id")] + public string? ConsumerId { get; set; } + + /// + /// The ID of your Unify application. + /// + [SpeakeasyMetadata("header:style=simple,explode=false,name=x-apideck-app-id")] + public string? AppId { get; set; } + + /// + /// Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. + /// + [SpeakeasyMetadata("header:style=simple,explode=false,name=x-apideck-service-id")] + public string? ServiceId { get; set; } + + /// + /// Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=cursor")] + public string? Cursor { get; set; } = null; + + /// + /// Number of results to return. Minimum 1, Maximum 200, Default 20. + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=limit")] + public long? Limit { get; set; } = 20; + + /// + /// Optional unmapped key/values that will be passed through to downstream as query parameters. Ie: ?pass_through[search]=leads becomes ?search=leads. + /// + [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=pass_through")] + public Dictionary? PassThrough { get; set; } + + /// + /// The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation. <br /><br />Example: `fields=name,email,addresses.city`<br /><br />In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=fields")] + public string? Fields { get; set; } = null; + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/CrmListsAllResponse.cs b/src/ApideckUnifySdk/Models/Requests/CrmListsAllResponse.cs new file mode 100644 index 000000000..baac45e7f --- /dev/null +++ b/src/ApideckUnifySdk/Models/Requests/CrmListsAllResponse.cs @@ -0,0 +1,34 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Requests +{ + using ApideckUnifySdk.Models.Components; + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + using System; + using System.Threading.Tasks; + + public class CrmListsAllResponse + { + public Func>? Next {get;set;} + [JsonProperty("-")] + public HTTPMetadata HttpMeta { get; set; } = default!; + + /// + /// Lists. + /// + public GetListsResponse? GetListsResponse { get; set; } + + /// + /// Unexpected error. + /// + public UnexpectedErrorResponse? UnexpectedErrorResponse { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/CrmListsOneRequest.cs b/src/ApideckUnifySdk/Models/Requests/CrmListsOneRequest.cs new file mode 100644 index 000000000..d3c2e941d --- /dev/null +++ b/src/ApideckUnifySdk/Models/Requests/CrmListsOneRequest.cs @@ -0,0 +1,52 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Requests +{ + using ApideckUnifySdk.Utils; + + public class CrmListsOneRequest + { + /// + /// ID of the record you are acting upon. + /// + [SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id")] + public string Id { get; set; } = default!; + + /// + /// ID of the consumer which you want to get or push data from. + /// + [SpeakeasyMetadata("header:style=simple,explode=false,name=x-apideck-consumer-id")] + public string? ConsumerId { get; set; } + + /// + /// The ID of your Unify application. + /// + [SpeakeasyMetadata("header:style=simple,explode=false,name=x-apideck-app-id")] + public string? AppId { get; set; } + + /// + /// Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. + /// + [SpeakeasyMetadata("header:style=simple,explode=false,name=x-apideck-service-id")] + public string? ServiceId { get; set; } + + /// + /// Include raw response. Mostly used for debugging purposes. + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=raw")] + public bool? Raw { get; set; } = false; + + /// + /// The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation. <br /><br />Example: `fields=name,email,addresses.city`<br /><br />In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=fields")] + public string? Fields { get; set; } = null; + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Models/Requests/CrmListsOneResponse.cs b/src/ApideckUnifySdk/Models/Requests/CrmListsOneResponse.cs new file mode 100644 index 000000000..9a3eafe78 --- /dev/null +++ b/src/ApideckUnifySdk/Models/Requests/CrmListsOneResponse.cs @@ -0,0 +1,31 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. +// +// Changes to this file may cause incorrect behavior and will be lost when +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#nullable enable +namespace ApideckUnifySdk.Models.Requests +{ + using ApideckUnifySdk.Models.Components; + using ApideckUnifySdk.Utils; + using Newtonsoft.Json; + + public class CrmListsOneResponse + { + [JsonProperty("-")] + public HTTPMetadata HttpMeta { get; set; } = default!; + + /// + /// List. + /// + public GetListResponse? GetListResponse { get; set; } + + /// + /// Unexpected error. + /// + public UnexpectedErrorResponse? UnexpectedErrorResponse { get; set; } + } +} \ No newline at end of file diff --git a/src/ApideckUnifySdk/Quotes.cs b/src/ApideckUnifySdk/Quotes.cs index c7cf9b94b..99644ec29 100644 --- a/src/ApideckUnifySdk/Quotes.cs +++ b/src/ApideckUnifySdk/Quotes.cs @@ -296,7 +296,8 @@ public async Task ListAsync( CompanyId = request?.CompanyId, Cursor = nextCursor, Limit = request?.Limit, - Filter = request?.Filter + Filter = request?.Filter, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/SDKConfig.cs b/src/ApideckUnifySdk/SDKConfig.cs index 09ce374fa..062c4cdfa 100644 --- a/src/ApideckUnifySdk/SDKConfig.cs +++ b/src/ApideckUnifySdk/SDKConfig.cs @@ -49,7 +49,7 @@ public SDKConfig(ISpeakeasyHttpClient? client = null) ServerIndex = 0; ConsumerId = null; AppId = null; - UserAgent = "speakeasy-sdk/csharp 0.23.28 2.915.1 10.24.47 ApideckUnifySdk"; + UserAgent = "speakeasy-sdk/csharp 0.24.0 2.924.0 10.28.1 ApideckUnifySdk"; SecuritySource = null; Hooks = new SDKHooks(); RetryConfig = null; diff --git a/src/ApideckUnifySdk/Subsidiaries.cs b/src/ApideckUnifySdk/Subsidiaries.cs index 5fd95da74..032649ea7 100644 --- a/src/ApideckUnifySdk/Subsidiaries.cs +++ b/src/ApideckUnifySdk/Subsidiaries.cs @@ -296,7 +296,8 @@ public async Task ListAsync( CompanyId = request?.CompanyId, Cursor = nextCursor, Limit = request?.Limit, - Fields = request?.Fields + Fields = request?.Fields, + PassThrough = request?.PassThrough }; return await ListAsync ( diff --git a/src/ApideckUnifySdk/Utils/Constants.cs b/src/ApideckUnifySdk/Utils/Constants.cs index b2a4283d4..1394eac03 100644 --- a/src/ApideckUnifySdk/Utils/Constants.cs +++ b/src/ApideckUnifySdk/Utils/Constants.cs @@ -22,17 +22,17 @@ public static class Constants /// /// The version of the SDK. /// - public const string SdkVersion = "0.23.28"; + public const string SdkVersion = "0.24.0"; /// /// The version of the SDK generator used to create this SDK. /// - public const string SdkGenVersion = "2.915.1"; + public const string SdkGenVersion = "2.924.0"; /// /// The version of the OpenAPI document used to generate this SDK. /// - public const string OpenApiDocVersion = "10.24.47"; + public const string OpenApiDocVersion = "10.28.1"; } }