This connector is optimized for AI agents. For the data replication connector, see Salesforce .
This is the full reference documentation for the Salesforce agent connector.
Supported entities and actions
The Salesforce connector supports the following entities and actions.
Entity Actions Sobjects List Accounts List , Get , API Search , Context Store Search Contacts List , Get , API Search , Context Store Search Leads List , Get , API Search , Context Store Search Opportunities List , Get , API Search , Context Store Search Tasks List , Get , API Search , Context Store Search Events List , Get , API Search Campaigns List , Get , API Search Cases List , Get , API Search Notes List , Get , API Search Content Versions List , Get , Download Attachments List , Get , Download Reports List , Get Query List
Sobjects
Sobjects List
Returns a list of all available Salesforce objects (sObjects) in the organization.
This endpoint is used for health checks to verify authentication and connectivity.
Python SDK
await salesforce . sobjects . list ( )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "sobjects", "action": "list" }'
Response Schema Records Field Name Type Description namestringlabelnull | stringlabelPluralnull | stringkeyPrefixnull | stringcustomnull | booleanqueryablenull | booleansearchablenull | booleancreateablenull | booleanupdateablenull | booleandeletablenull | booleanurlsnull | object
Accounts
Accounts List
Returns a list of accounts via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . accounts . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "accounts", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for accounts. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Account ORDER BY LastModifiedDate DESC LIMIT 50"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Accounts Get
Get a single account by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . accounts . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "accounts", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Account ID (18-character ID starting with '001') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Name,Industry,AnnualRevenue,Website"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Accounts API Search
Search for accounts using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields and objects.
Use SOQL (list action) for structured queries with specific field conditions.
Python SDK
await salesforce . accounts . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "accounts", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} IN scope RETURNING Object(fields) [LIMIT n] Examples:
"FIND {Acme} IN ALL FIELDS RETURNING Account(Id,Name)"
"FIND {tech*} IN NAME FIELDS RETURNING Account(Id,Name,Industry) LIMIT 50"
"FIND {"exact phrase"} RETURNING Account(Id,Name,Website)"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Accounts Context Store Search
Search and filter accounts records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await salesforce . accounts . context_store_search ( query = { "filter" : { "eq" : { "Id" : "<str>" } } } )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "accounts", "action": "context_store_search", "params": { "query": {"filter": {"eq": {"Id": "<str>"}}} } }'
Parameters
Parameter Name Type Required Description queryobjectYes Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or query.filterobjectNo Filter conditions query.sortarrayNo Sort conditions limitintegerNo Maximum results to return (default 1000) cursorstringNo Pagination cursor from previous response's meta.cursor fieldsarrayNo Field paths to include in results
Searchable Fields
Field Name Type Description IdstringUnique identifier for the account record NamestringName of the account or company AccountSourcestringSource of the account record (e.g., Web, Referral) BillingAddressobjectComplete billing address as a compound field BillingCitystringCity portion of the billing address BillingCountrystringCountry portion of the billing address BillingPostalCodestringPostal code portion of the billing address BillingStatestringState or province portion of the billing address BillingStreetstringStreet address portion of the billing address CreatedByIdstringID of the user who created this account CreatedDatestringDate and time when the account was created DescriptionstringText description of the account IndustrystringPrimary business industry of the account IsDeletedbooleanWhether the account has been moved to the Recycle Bin LastActivityDatestringDate of the last activity associated with this account LastModifiedByIdstringID of the user who last modified this account LastModifiedDatestringDate and time when the account was last modified NumberOfEmployeesintegerNumber of employees at the account OwnerIdstringID of the user who owns this account ParentIdstringID of the parent account, if this is a subsidiary PhonestringPrimary phone number for the account ShippingAddressobjectComplete shipping address as a compound field ShippingCitystringCity portion of the shipping address ShippingCountrystringCountry portion of the shipping address ShippingPostalCodestringPostal code portion of the shipping address ShippingStatestringState or province portion of the shipping address ShippingStreetstringStreet address portion of the shipping address TypestringType of account (e.g., Customer, Partner, Competitor) WebsitestringWebsite URL for the account SystemModstampstringSystem timestamp when the record was last modified
Response Schema Field Name Type Description dataarrayList of matching records metaobjectPagination metadata meta.has_morebooleanWhether additional pages are available meta.cursorstring | nullCursor for next page of results meta.took_msnumber | nullQuery execution time in milliseconds data[].IdstringUnique identifier for the account record data[].NamestringName of the account or company data[].AccountSourcestringSource of the account record (e.g., Web, Referral) data[].BillingAddressobjectComplete billing address as a compound field data[].BillingCitystringCity portion of the billing address data[].BillingCountrystringCountry portion of the billing address data[].BillingPostalCodestringPostal code portion of the billing address data[].BillingStatestringState or province portion of the billing address data[].BillingStreetstringStreet address portion of the billing address data[].CreatedByIdstringID of the user who created this account data[].CreatedDatestringDate and time when the account was created data[].DescriptionstringText description of the account data[].IndustrystringPrimary business industry of the account data[].IsDeletedbooleanWhether the account has been moved to the Recycle Bin data[].LastActivityDatestringDate of the last activity associated with this account data[].LastModifiedByIdstringID of the user who last modified this account data[].LastModifiedDatestringDate and time when the account was last modified data[].NumberOfEmployeesintegerNumber of employees at the account data[].OwnerIdstringID of the user who owns this account data[].ParentIdstringID of the parent account, if this is a subsidiary data[].PhonestringPrimary phone number for the account data[].ShippingAddressobjectComplete shipping address as a compound field data[].ShippingCitystringCity portion of the shipping address data[].ShippingCountrystringCountry portion of the shipping address data[].ShippingPostalCodestringPostal code portion of the shipping address data[].ShippingStatestringState or province portion of the shipping address data[].ShippingStreetstringStreet address portion of the shipping address data[].TypestringType of account (e.g., Customer, Partner, Competitor) data[].WebsitestringWebsite URL for the account data[].SystemModstampstringSystem timestamp when the record was last modified
Returns a list of contacts via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . contacts . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "contacts", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for contacts. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Contact WHERE AccountId = '001xx...' LIMIT 50"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Get a single contact by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . contacts . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "contacts", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Contact ID (18-character ID starting with '003') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,FirstName,LastName,Email,Phone,AccountId"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Search for contacts using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . contacts . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "contacts", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Contact(fields) [LIMIT n] Examples:
"FIND {John} IN NAME FIELDS RETURNING Contact(Id,FirstName,LastName,Email)"
"FIND {*@example.com} IN EMAIL FIELDS RETURNING Contact(Id,Name,Email) LIMIT 25"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Contacts Context Store Search
Search and filter contacts records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await salesforce . contacts . context_store_search ( query = { "filter" : { "eq" : { "Id" : "<str>" } } } )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "contacts", "action": "context_store_search", "params": { "query": {"filter": {"eq": {"Id": "<str>"}}} } }'
Parameters
Parameter Name Type Required Description queryobjectYes Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or query.filterobjectNo Filter conditions query.sortarrayNo Sort conditions limitintegerNo Maximum results to return (default 1000) cursorstringNo Pagination cursor from previous response's meta.cursor fieldsarrayNo Field paths to include in results
Searchable Fields
Field Name Type Description IdstringUnique identifier for the contact record AccountIdstringID of the account this contact is associated with CreatedByIdstringID of the user who created this contact CreatedDatestringDate and time when the contact was created DepartmentstringDepartment within the account where the contact works EmailstringEmail address of the contact FirstNamestringFirst name of the contact IsDeletedbooleanWhether the contact has been moved to the Recycle Bin LastActivityDatestringDate of the last activity associated with this contact LastModifiedByIdstringID of the user who last modified this contact LastModifiedDatestringDate and time when the contact was last modified LastNamestringLast name of the contact LeadSourcestringSource from which this contact originated MailingAddressobjectComplete mailing address as a compound field MailingCitystringCity portion of the mailing address MailingCountrystringCountry portion of the mailing address MailingPostalCodestringPostal code portion of the mailing address MailingStatestringState or province portion of the mailing address MailingStreetstringStreet address portion of the mailing address MobilePhonestringMobile phone number of the contact NamestringFull name of the contact (read-only, concatenation of first and last name) OwnerIdstringID of the user who owns this contact PhonestringBusiness phone number of the contact ReportsToIdstringID of the contact this contact reports to TitlestringJob title of the contact SystemModstampstringSystem timestamp when the record was last modified
Response Schema Field Name Type Description dataarrayList of matching records metaobjectPagination metadata meta.has_morebooleanWhether additional pages are available meta.cursorstring | nullCursor for next page of results meta.took_msnumber | nullQuery execution time in milliseconds data[].IdstringUnique identifier for the contact record data[].AccountIdstringID of the account this contact is associated with data[].CreatedByIdstringID of the user who created this contact data[].CreatedDatestringDate and time when the contact was created data[].DepartmentstringDepartment within the account where the contact works data[].EmailstringEmail address of the contact data[].FirstNamestringFirst name of the contact data[].IsDeletedbooleanWhether the contact has been moved to the Recycle Bin data[].LastActivityDatestringDate of the last activity associated with this contact data[].LastModifiedByIdstringID of the user who last modified this contact data[].LastModifiedDatestringDate and time when the contact was last modified data[].LastNamestringLast name of the contact data[].LeadSourcestringSource from which this contact originated data[].MailingAddressobjectComplete mailing address as a compound field data[].MailingCitystringCity portion of the mailing address data[].MailingCountrystringCountry portion of the mailing address data[].MailingPostalCodestringPostal code portion of the mailing address data[].MailingStatestringState or province portion of the mailing address data[].MailingStreetstringStreet address portion of the mailing address data[].MobilePhonestringMobile phone number of the contact data[].NamestringFull name of the contact (read-only, concatenation of first and last name) data[].OwnerIdstringID of the user who owns this contact data[].PhonestringBusiness phone number of the contact data[].ReportsToIdstringID of the contact this contact reports to data[].TitlestringJob title of the contact data[].SystemModstampstringSystem timestamp when the record was last modified
Leads
Leads List
Returns a list of leads via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . leads . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "leads", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for leads. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Lead WHERE Status = 'Open' LIMIT 100"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Leads Get
Get a single lead by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . leads . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "leads", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Lead ID (18-character ID starting with '00Q') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,FirstName,LastName,Email,Company,Status,LeadSource"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Leads API Search
Search for leads using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . leads . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "leads", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Lead(fields) [LIMIT n] Examples:
"FIND {Smith} IN NAME FIELDS RETURNING Lead(Id,FirstName,LastName,Company,Status)"
"FIND {marketing} IN ALL FIELDS RETURNING Lead(Id,Name,LeadSource) LIMIT 50"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Leads Context Store Search
Search and filter leads records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await salesforce . leads . context_store_search ( query = { "filter" : { "eq" : { "Id" : "<str>" } } } )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "leads", "action": "context_store_search", "params": { "query": {"filter": {"eq": {"Id": "<str>"}}} } }'
Parameters
Parameter Name Type Required Description queryobjectYes Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or query.filterobjectNo Filter conditions query.sortarrayNo Sort conditions limitintegerNo Maximum results to return (default 1000) cursorstringNo Pagination cursor from previous response's meta.cursor fieldsarrayNo Field paths to include in results
Searchable Fields
Field Name Type Description IdstringUnique identifier for the lead record AddressobjectComplete address as a compound field CitystringCity portion of the address CompanystringCompany or organization the lead works for ConvertedAccountIdstringID of the account created when lead was converted ConvertedContactIdstringID of the contact created when lead was converted ConvertedDatestringDate when the lead was converted ConvertedOpportunityIdstringID of the opportunity created when lead was converted CountrystringCountry portion of the address CreatedByIdstringID of the user who created this lead CreatedDatestringDate and time when the lead was created EmailstringEmail address of the lead FirstNamestringFirst name of the lead IndustrystringIndustry the lead's company operates in IsConvertedbooleanWhether the lead has been converted to an account, contact, and opportunity IsDeletedbooleanWhether the lead has been moved to the Recycle Bin LastActivityDatestringDate of the last activity associated with this lead LastModifiedByIdstringID of the user who last modified this lead LastModifiedDatestringDate and time when the lead was last modified LastNamestringLast name of the lead LeadSourcestringSource from which this lead originated MobilePhonestringMobile phone number of the lead NamestringFull name of the lead (read-only, concatenation of first and last name) NumberOfEmployeesintegerNumber of employees at the lead's company OwnerIdstringID of the user who owns this lead PhonestringPhone number of the lead PostalCodestringPostal code portion of the address RatingstringRating of the lead (e.g., Hot, Warm, Cold) StatestringState or province portion of the address StatusstringCurrent status of the lead in the sales process StreetstringStreet address portion of the address TitlestringJob title of the lead WebsitestringWebsite URL for the lead's company SystemModstampstringSystem timestamp when the record was last modified
Response Schema Field Name Type Description dataarrayList of matching records metaobjectPagination metadata meta.has_morebooleanWhether additional pages are available meta.cursorstring | nullCursor for next page of results meta.took_msnumber | nullQuery execution time in milliseconds data[].IdstringUnique identifier for the lead record data[].AddressobjectComplete address as a compound field data[].CitystringCity portion of the address data[].CompanystringCompany or organization the lead works for data[].ConvertedAccountIdstringID of the account created when lead was converted data[].ConvertedContactIdstringID of the contact created when lead was converted data[].ConvertedDatestringDate when the lead was converted data[].ConvertedOpportunityIdstringID of the opportunity created when lead was converted data[].CountrystringCountry portion of the address data[].CreatedByIdstringID of the user who created this lead data[].CreatedDatestringDate and time when the lead was created data[].EmailstringEmail address of the lead data[].FirstNamestringFirst name of the lead data[].IndustrystringIndustry the lead's company operates in data[].IsConvertedbooleanWhether the lead has been converted to an account, contact, and opportunity data[].IsDeletedbooleanWhether the lead has been moved to the Recycle Bin data[].LastActivityDatestringDate of the last activity associated with this lead data[].LastModifiedByIdstringID of the user who last modified this lead data[].LastModifiedDatestringDate and time when the lead was last modified data[].LastNamestringLast name of the lead data[].LeadSourcestringSource from which this lead originated data[].MobilePhonestringMobile phone number of the lead data[].NamestringFull name of the lead (read-only, concatenation of first and last name) data[].NumberOfEmployeesintegerNumber of employees at the lead's company data[].OwnerIdstringID of the user who owns this lead data[].PhonestringPhone number of the lead data[].PostalCodestringPostal code portion of the address data[].RatingstringRating of the lead (e.g., Hot, Warm, Cold) data[].StatestringState or province portion of the address data[].StatusstringCurrent status of the lead in the sales process data[].StreetstringStreet address portion of the address data[].TitlestringJob title of the lead data[].WebsitestringWebsite URL for the lead's company data[].SystemModstampstringSystem timestamp when the record was last modified
Opportunities
Opportunities List
Returns a list of opportunities via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . opportunities . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "opportunities", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for opportunities. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Opportunity WHERE StageName = 'Closed Won' LIMIT 50"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Opportunities Get
Get a single opportunity by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . opportunities . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "opportunities", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Opportunity ID (18-character ID starting with '006') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Name,Amount,StageName,CloseDate,AccountId"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Opportunities API Search
Search for opportunities using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . opportunities . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "opportunities", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Opportunity(fields) [LIMIT n] Examples:
"FIND {Enterprise} IN NAME FIELDS RETURNING Opportunity(Id,Name,Amount,StageName)"
"FIND {renewal} IN ALL FIELDS RETURNING Opportunity(Id,Name,CloseDate) LIMIT 25"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Opportunities Context Store Search
Search and filter opportunities records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await salesforce . opportunities . context_store_search ( query = { "filter" : { "eq" : { "Id" : "<str>" } } } )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "opportunities", "action": "context_store_search", "params": { "query": {"filter": {"eq": {"Id": "<str>"}}} } }'
Parameters
Parameter Name Type Required Description queryobjectYes Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or query.filterobjectNo Filter conditions query.sortarrayNo Sort conditions limitintegerNo Maximum results to return (default 1000) cursorstringNo Pagination cursor from previous response's meta.cursor fieldsarrayNo Field paths to include in results
Searchable Fields
Field Name Type Description IdstringUnique identifier for the opportunity record AccountIdstringID of the account associated with this opportunity AmountnumberEstimated total sale amount CampaignIdstringID of the campaign that generated this opportunity CloseDatestringExpected close date for the opportunity ContactIdstringID of the primary contact for this opportunity CreatedByIdstringID of the user who created this opportunity CreatedDatestringDate and time when the opportunity was created DescriptionstringText description of the opportunity ExpectedRevenuenumberExpected revenue based on amount and probability ForecastCategorystringForecast category for this opportunity ForecastCategoryNamestringName of the forecast category IsClosedbooleanWhether the opportunity is closed IsDeletedbooleanWhether the opportunity has been moved to the Recycle Bin IsWonbooleanWhether the opportunity was won LastActivityDatestringDate of the last activity associated with this opportunity LastModifiedByIdstringID of the user who last modified this opportunity LastModifiedDatestringDate and time when the opportunity was last modified LeadSourcestringSource from which this opportunity originated NamestringName of the opportunity NextStepstringDescription of the next step in closing the opportunity OwnerIdstringID of the user who owns this opportunity ProbabilitynumberLikelihood of closing the opportunity (percentage) StageNamestringCurrent stage of the opportunity in the sales process TypestringType of opportunity (e.g., New Business, Existing Business) SystemModstampstringSystem timestamp when the record was last modified
Response Schema Field Name Type Description dataarrayList of matching records metaobjectPagination metadata meta.has_morebooleanWhether additional pages are available meta.cursorstring | nullCursor for next page of results meta.took_msnumber | nullQuery execution time in milliseconds data[].IdstringUnique identifier for the opportunity record data[].AccountIdstringID of the account associated with this opportunity data[].AmountnumberEstimated total sale amount data[].CampaignIdstringID of the campaign that generated this opportunity data[].CloseDatestringExpected close date for the opportunity data[].ContactIdstringID of the primary contact for this opportunity data[].CreatedByIdstringID of the user who created this opportunity data[].CreatedDatestringDate and time when the opportunity was created data[].DescriptionstringText description of the opportunity data[].ExpectedRevenuenumberExpected revenue based on amount and probability data[].ForecastCategorystringForecast category for this opportunity data[].ForecastCategoryNamestringName of the forecast category data[].IsClosedbooleanWhether the opportunity is closed data[].IsDeletedbooleanWhether the opportunity has been moved to the Recycle Bin data[].IsWonbooleanWhether the opportunity was won data[].LastActivityDatestringDate of the last activity associated with this opportunity data[].LastModifiedByIdstringID of the user who last modified this opportunity data[].LastModifiedDatestringDate and time when the opportunity was last modified data[].LeadSourcestringSource from which this opportunity originated data[].NamestringName of the opportunity data[].NextStepstringDescription of the next step in closing the opportunity data[].OwnerIdstringID of the user who owns this opportunity data[].ProbabilitynumberLikelihood of closing the opportunity (percentage) data[].StageNamestringCurrent stage of the opportunity in the sales process data[].TypestringType of opportunity (e.g., New Business, Existing Business) data[].SystemModstampstringSystem timestamp when the record was last modified
Tasks
Tasks List
Returns a list of tasks via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . tasks . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "tasks", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for tasks. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Task WHERE Status = 'Not Started' LIMIT 100"
Response Schema Records Field Name Type Description IdstringSubjectstringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Tasks Get
Get a single task by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . tasks . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "tasks", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Task ID (18-character ID starting with '00T') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Subject,Status,Priority,ActivityDate,WhoId,WhatId"
Response Schema Records Field Name Type Description IdstringSubjectstringattributesobject
Tasks API Search
Search for tasks using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . tasks . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "tasks", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Task(fields) [LIMIT n] Examples:
"FIND {follow up} IN ALL FIELDS RETURNING Task(Id,Subject,Status,Priority)"
"FIND {call} IN NAME FIELDS RETURNING Task(Id,Subject,ActivityDate) LIMIT 50"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Tasks Context Store Search
Search and filter tasks records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await salesforce . tasks . context_store_search ( query = { "filter" : { "eq" : { "Id" : "<str>" } } } )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "tasks", "action": "context_store_search", "params": { "query": {"filter": {"eq": {"Id": "<str>"}}} } }'
Parameters
Parameter Name Type Required Description queryobjectYes Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or query.filterobjectNo Filter conditions query.sortarrayNo Sort conditions limitintegerNo Maximum results to return (default 1000) cursorstringNo Pagination cursor from previous response's meta.cursor fieldsarrayNo Field paths to include in results
Searchable Fields
Field Name Type Description IdstringUnique identifier for the task record AccountIdstringID of the account associated with this task ActivityDatestringDue date for the task CallDispositionstringResult of the call, if this task represents a call CallDurationInSecondsintegerDuration of the call in seconds CallTypestringType of call (Inbound, Outbound, Internal) CompletedDateTimestringDate and time when the task was completed CreatedByIdstringID of the user who created this task CreatedDatestringDate and time when the task was created DescriptionstringText description or notes about the task IsClosedbooleanWhether the task has been completed IsDeletedbooleanWhether the task has been moved to the Recycle Bin IsHighPrioritybooleanWhether the task is marked as high priority LastModifiedByIdstringID of the user who last modified this task LastModifiedDatestringDate and time when the task was last modified OwnerIdstringID of the user who owns this task PrioritystringPriority level of the task (High, Normal, Low) StatusstringCurrent status of the task SubjectstringSubject or title of the task TaskSubtypestringSubtype of the task (e.g., Call, Email, Task) TypestringType of task WhatIdstringID of the related object (Account, Opportunity, etc.) WhoIdstringID of the related person (Contact or Lead) SystemModstampstringSystem timestamp when the record was last modified
Response Schema Field Name Type Description dataarrayList of matching records metaobjectPagination metadata meta.has_morebooleanWhether additional pages are available meta.cursorstring | nullCursor for next page of results meta.took_msnumber | nullQuery execution time in milliseconds data[].IdstringUnique identifier for the task record data[].AccountIdstringID of the account associated with this task data[].ActivityDatestringDue date for the task data[].CallDispositionstringResult of the call, if this task represents a call data[].CallDurationInSecondsintegerDuration of the call in seconds data[].CallTypestringType of call (Inbound, Outbound, Internal) data[].CompletedDateTimestringDate and time when the task was completed data[].CreatedByIdstringID of the user who created this task data[].CreatedDatestringDate and time when the task was created data[].DescriptionstringText description or notes about the task data[].IsClosedbooleanWhether the task has been completed data[].IsDeletedbooleanWhether the task has been moved to the Recycle Bin data[].IsHighPrioritybooleanWhether the task is marked as high priority data[].LastModifiedByIdstringID of the user who last modified this task data[].LastModifiedDatestringDate and time when the task was last modified data[].OwnerIdstringID of the user who owns this task data[].PrioritystringPriority level of the task (High, Normal, Low) data[].StatusstringCurrent status of the task data[].SubjectstringSubject or title of the task data[].TaskSubtypestringSubtype of the task (e.g., Call, Email, Task) data[].TypestringType of task data[].WhatIdstringID of the related object (Account, Opportunity, etc.) data[].WhoIdstringID of the related person (Contact or Lead) data[].SystemModstampstringSystem timestamp when the record was last modified
Events
Events List
Returns a list of events via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . events . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "events", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for events. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Event WHERE StartDateTime > TODAY LIMIT 50"
Response Schema Records Field Name Type Description IdstringSubjectstringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Events Get
Get a single event by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . events . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "events", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Event ID (18-character ID starting with '00U') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Subject,StartDateTime,EndDateTime,Location,WhoId,WhatId"
Response Schema Records Field Name Type Description IdstringSubjectstringattributesobject
Events API Search
Search for events using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . events . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "events", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Event(fields) [LIMIT n] Examples:
"FIND {meeting} IN ALL FIELDS RETURNING Event(Id,Subject,StartDateTime,Location)"
"FIND {demo} IN NAME FIELDS RETURNING Event(Id,Subject,EndDateTime) LIMIT 25"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Campaigns
Campaigns List
Returns a list of campaigns via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . campaigns . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "campaigns", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for campaigns. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Campaign WHERE IsActive = true LIMIT 50"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Campaigns Get
Get a single campaign by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . campaigns . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "campaigns", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Campaign ID (18-character ID starting with '701') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Name,Type,Status,StartDate,EndDate,IsActive"
Response Schema Records Field Name Type Description IdstringNamestringattributesobject
Campaigns API Search
Search for campaigns using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . campaigns . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "campaigns", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Campaign(fields) [LIMIT n] Examples:
"FIND {webinar} IN ALL FIELDS RETURNING Campaign(Id,Name,Type,Status)"
"FIND {2024} IN NAME FIELDS RETURNING Campaign(Id,Name,StartDate,IsActive) LIMIT 50"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Cases
Cases List
Returns a list of cases via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . cases . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "cases", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for cases. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Case WHERE Status = 'New' LIMIT 100"
Response Schema Records Field Name Type Description IdstringCaseNumberstringSubjectstringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Cases Get
Get a single case by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . cases . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "cases", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Case ID (18-character ID starting with '500') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,CaseNumber,Subject,Status,Priority,ContactId,AccountId"
Response Schema Records Field Name Type Description IdstringCaseNumberstringSubjectstringattributesobject
Cases API Search
Search for cases using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . cases . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "cases", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Case(fields) [LIMIT n] Examples:
"FIND {login issue} IN ALL FIELDS RETURNING Case(Id,CaseNumber,Subject,Status)"
"FIND {urgent} IN NAME FIELDS RETURNING Case(Id,Subject,Priority) LIMIT 25"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Notes
Notes List
Returns a list of notes via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . notes . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "notes", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for notes. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT FIELDS(STANDARD) FROM Note WHERE ParentId = '001xx...' LIMIT 50"
Response Schema Records Field Name Type Description IdstringTitlestringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Notes Get
Get a single note by ID. Returns all accessible fields by default.
Use the fields parameter to retrieve only specific fields for better performance.
Python SDK
await salesforce . notes . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "notes", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Note ID (18-character ID starting with '002') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Title,Body,ParentId,OwnerId"
Response Schema Records Field Name Type Description IdstringTitlestringattributesobject
Notes API Search
Search for notes using SOSL (Salesforce Object Search Language).
SOSL is optimized for text-based searches across multiple fields.
Python SDK
await salesforce . notes . api_search ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "notes", "action": "api_search", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOSL search query. Format: FIND {searchTerm} RETURNING Note(fields) [LIMIT n] Examples:
"FIND {important} IN ALL FIELDS RETURNING Note(Id,Title,ParentId)"
"FIND {action items} IN NAME FIELDS RETURNING Note(Id,Title,Body) LIMIT 50"
|
Response Schema Records Field Name Type Description searchRecordsarray<object>
Content Versions
Content Versions List
Returns a list of content versions (file metadata) via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Note: ContentVersion does not support FIELDS(STANDARD), so specific fields must be listed.
Python SDK
await salesforce . content_versions . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "content_versions", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for content versions. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT Id, Title, FileExtension, ContentSize FROM ContentVersion WHERE IsLatest = true LIMIT 50"
Response Schema Records Field Name Type Description IdstringTitlestringFileExtensionstringContentSizeintegerContentDocumentIdstringVersionNumberstringIsLatestbooleanattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Content Versions Get
Get a single content version's metadata by ID. Returns file metadata, not the file content.
Use the download action to retrieve the actual file binary.
Python SDK
await salesforce . content_versions . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "content_versions", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce ContentVersion ID (18-character ID starting with '068') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Title,FileExtension,ContentSize,ContentDocumentId,IsLatest"
Response Schema Records Field Name Type Description IdstringTitlestringFileExtensionstringContentSizeintegerContentDocumentIdstringVersionNumberstringIsLatestbooleanattributesobject
Content Versions Download
Downloads the binary file content of a content version.
First use the list or get action to retrieve the ContentVersion ID and file metadata (size, type, etc.),
then use this action to download the actual file content.
The response is the raw binary file data.
Python SDK
async for chunk in salesforce . content_versions . download ( id = "<str>" ) : file . write ( chunk )
Note : Download operations return an async iterator of bytes chunks for memory-efficient streaming. Use async for to process chunks as they arrive.
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "content_versions", "action": "download", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce ContentVersion ID (18-character ID starting with '068'). Obtain this ID from the list or get action. range_headerstringNo Optional Range header for partial downloads (e.g., 'bytes=0-99')
Attachments
Attachments List
Returns a list of attachments (legacy) via SOQL query. Default returns up to 200 records.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Note: Attachments are a legacy feature; consider using ContentVersion (Salesforce Files) for new implementations.
Python SDK
await salesforce . attachments . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "attachments", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query for attachments. Default returns up to 200 records. To change the limit, provide your own query with a LIMIT clause. Example: "SELECT Id, Name, ContentType, BodyLength, ParentId FROM Attachment WHERE ParentId = '001xx...' LIMIT 50"
Response Schema Records Field Name Type Description IdstringNamestringContentTypestringBodyLengthintegerParentIdstringattributesobject
Field Name Type Description donebooleannextRecordsUrlstring
Attachments Get
Get a single attachment's metadata by ID. Returns file metadata, not the file content.
Use the download action to retrieve the actual file binary.
Note: Attachments are a legacy feature; consider using ContentVersion for new implementations.
Python SDK
await salesforce . attachments . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "attachments", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Attachment ID (18-character ID starting with '00P') fieldsstringNo Comma-separated list of fields to retrieve. If omitted, returns all accessible fields. Example: "Id,Name,ContentType,BodyLength,ParentId"
Response Schema Records Field Name Type Description IdstringNamestringContentTypestringBodyLengthintegerParentIdstringattributesobject
Attachments Download
Downloads the binary file content of an attachment (legacy).
First use the list or get action to retrieve the Attachment ID and file metadata,
then use this action to download the actual file content.
Note: Attachments are a legacy feature; consider using ContentVersion for new implementations.
Python SDK
async for chunk in salesforce . attachments . download ( id = "<str>" ) : file . write ( chunk )
Note : Download operations return an async iterator of bytes chunks for memory-efficient streaming. Use async for to process chunks as they arrive.
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "attachments", "action": "download", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Attachment ID (18-character ID starting with '00P'). Obtain this ID from the list or get action. range_headerstringNo Optional Range header for partial downloads (e.g., 'bytes=0-99')
Reports
Reports List
Returns a list of reports available in the Salesforce org.
Each report includes metadata such as Id, Name, Format, Description, and URL.
This uses the Analytics REST API, not SOQL.
Python SDK
await salesforce . reports . list ( )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "reports", "action": "list" }'
Response Schema Records Field Name Type Description idstringnamenull | stringurlnull | stringdescribeUrlnull | stringinstancesUrlnull | string
Reports Get
Executes a report synchronously and returns the report data results.
Returns both metadata and the executed data including fact maps, aggregates, and detail rows.
First use the list action to find available reports, then use this action to run a report and get its data.
Note: Large reports may be truncated. For reports with more than 2,000 detail rows, consider using async report runs.
Python SDK
await salesforce . reports . get ( id = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "reports", "action": "get", "params": { "id": "<str>" } }'
Parameters
Parameter Name Type Required Description idstringYes Salesforce Report ID (18-character ID starting with '00O'). Obtain this ID from the list action. includeDetailsbooleanNo Whether to include detail rows in the report results. Defaults to true. Set to false to get only summary/aggregate data.
Response Schema Records Field Name Type Description attributesnull | objectreportMetadatanull | objectreportExtendedMetadatanull | objectfactMapnull | objectgroupingsDownnull | objectgroupingsAcrossnull | objecthasDetailRowsnull | booleanallDatanull | boolean
Query
Query List
Execute a custom SOQL query and return results. Use this for querying any Salesforce object.
For pagination, check the response: if done is false, use nextRecordsUrl to fetch the next page.
Python SDK
await salesforce . query . list ( q = "<str>" )
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer {your_auth_token}' \ --data '{ "entity": "query", "action": "list", "params": { "q": "<str>" } }'
Parameters
Parameter Name Type Required Description qstringYes SOQL query string. Include LIMIT clause to control the number of records returned. Examples:
"SELECT Id, Name FROM Account LIMIT 100"
"SELECT FIELDS(STANDARD) FROM Contact WHERE AccountId = '001xx...' LIMIT 50"
"SELECT Id, Subject, Status FROM Case WHERE CreatedDate = TODAY"
|
Response Schema Field Name Type Description donebooleannextRecordsUrlstring