{"method":"GET","path":"https://api.revcent.com/v2/user_third_party_integrations/{user_third_party_integration_id}","summary":"Get A User Third Party Integration","description":"Retrieve the details of a specific user third party integration. View markdown documentation at https://revcent.com/documentation/markdown/mcp/operation/GetUserThirdPartyIntegration.md for an in-depth overview of this operation.","operationId":"GetUserThirdPartyIntegration","parameters":[{"in":"path","name":"user_third_party_integration_id","description":"The user third party integration ID.","required":true,"schema":{"type":"string","description":"A 20 character user third party integration ID.","minLength":20,"maxLength":20}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{},"schema":{"additionalProperties":false,"properties":{},"type":"object"}}},"required":false},"responses":{"200":{"content":{"application/json":{"schema":{"allOf":[{"description":"","properties":{"api_call_id":{"type":"string","description":"A 20 character API call ID.","minLength":20,"maxLength":20},"api_call_unix":{"description":"Unix timestamp of when the API call was initiated.","type":"integer","format":"unix-time"},"code":{"description":"The API call response code, 1 = Success","type":"integer","enum":[1]}},"title":"APICallResponseInfo","type":"object","additionalProperties":false},{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"A 20 character user third party integration ID.","minLength":20,"maxLength":20},"name":{"description":"The third party integration name.","type":"string"},"description":{"description":"The third party integration description.","type":"string"},"enabled":{"description":"Whether the third party integration is currently enabled.","type":"boolean"},"third_party_credentials_saved":{"type":"array","description":"An array containing the id's of the third party integration credentials that have been saved (site_third_party_integration.third_party_credentials.id). Useful for determining if the credentials are correctly saved and RevCent was able to connect to the third party service.","items":{"type":"string"}},"third_party_options_saved":{"type":"array","description":"An array containing the third party options along with their associated field(s) with values that have been saved in RevCent. Useful for determining if the options are correctly saved and RevCent is using the proper values when interacting with the third party. Some third parties have options, while others don't. You can check if the site third party integration has options by checking if the site third party integration object has a 'third_party_options' property. If the site third party integration does have options, then you can use this array to check if the options have been saved properly.","items":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The third party option id that has been saved."},"fields":{"type":"array","description":"An array of the fields associated with the third party option that have been saved.","items":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The field id (site_third_party_integration.third_party_options.fields.id) associated with the third party option that has been saved."},"value":{"type":"array","description":"An array of value(s) provided for the option field that have been saved. If the field type is 'select' and the select_settings.multiple property is set to true, then multiple values can be provided and saved for the option field, thus the value is an array. If the field type is 'select' and the select_settings.multiple property is set to false, or if the field type is 'input', then only one value can be provided and saved for the option field, thus the value is still an array but should only contain one item.","items":{"type":"string","description":"The value that has been saved."}}}}}}}},"site_third_party_integration":{"type":"object","additionalProperties":false,"description":"The site third party associated with the user third party integration. Will also include any options retrieved from the third party where applicable.","properties":{"id":{"type":"string","description":"A 20 character system third party integration ID.","minLength":20,"maxLength":20},"name":{"description":"The site third party integration name.","type":"string"},"description":{"description":"The site third party integration description.","type":"string"},"integration_type":{"description":"The site third party integration type. Determines the type of integration, i.e. its intended purpose as a native RevCent integration. Integration types: 'ai': Integrations meant for AI use, such as powering AI chat and AI Assistants. 'ai_voice': Integrations meant for AI voice use, such as powering voice enabled AI Voice Agents. 'offline_payment': Integrations meant for processing alternate payments such as Sezzle, AfterPay, Affirm, Klarna and Amazon Pay. 'tax': Integrations meant for calculating taxes on purchases. 'shipping': Integrations meant for tracking shipments and pulling shipment updates such as delivery status.","type":"string","enum":["ai","ai_voice","offline_payment","tax","shipping"]},"third_party_credentials":{"type":"object","description":"The third_party_credentials object describes the type of credentials, along with the actual fields required.","additionalProperties":false,"properties":{"id":{"description":"The credentials id is used in conjunction when creating or modifying a user third party integration's credential fields. When creating or modifying a user third party integration's credential fields you include this identifier to link the required fields to the third_party_credentials object.","type":"string"},"name":{"description":"The credentials name. Used for displaying to the user the source of the credentials from the third party.","type":"string"},"description":{"description":"The credentials description. Used for displaying to the user additional information about the credentials including where to find the necessary fields from the third party.","type":"string"},"fields":{"type":"array","description":"The fields are the actual values required in order for RevCent to connect to the third party. You provide the values for these fields when creating or modifying a user third party integration's credentials.","items":{"type":"object","additionalProperties":false,"properties":{"id":{"description":"The field identifier is used in conjunction when creating or modifying a user third party integration's credential fields. When creating or modifying a user third party integration's credential fields you include this identifier to link the specific value to the correct field.","type":"string"},"name":{"description":"The field name. This is meant for displaying to the user the proper field to provide.","type":"string"},"required":{"type":"boolean","description":"Whether the field is required."}}}}}},"third_party_options":{"type":"array","description":"Any individual options and their fields for the third party. This is meant to be used when a third party has options that must be configured for RevCent to properly interact with the third party. Each option will have its own set of fields to fill out.","items":{"type":"object","additionalProperties":false,"properties":{"id":{"description":"The option identifier.","type":"string"},"name":{"description":"The option name.","type":"string"},"description":{"description":"The option description.","type":"string"},"required":{"type":"boolean","description":"Whether the option is required when creating a user third party integration with this site third party integration."},"fields":{"type":"array","description":"The fields related to the specific option.","items":{"type":"object","additionalProperties":false,"properties":{"id":{"description":"The field identifier is used in conjunction when creating or modifying a user third party integration's option fields. When creating or modifying a user third party integration's option fields you include this identifier to link the specific field to the third_party_options object id.","type":"string"},"name":{"description":"The field name. This is meant for displaying to the user the proper field to provide for the specific option.","type":"string"},"field_type":{"description":"The field type. If 'input', the user provides the value. If 'select', the user must choose from option(s) derived from the select_settings.options property.","type":"string","enum":["select","input"]},"required":{"type":"boolean","description":"Whether the option field is required."},"select_settings":{"type":"object","description":"Settings specific to fields of type 'select'. These values determine how the select field behaves and where the options for the select field are pulled from.","additionalProperties":false,"properties":{"third_party_asset":{"type":"boolean","description":"Whether the options for the select field are pulled from the third party integration's API. If false, the options array will contain available values. If true, RevCent will pull the options from the third party when retrieving the user third party integration via the GetUserThirdPartyIntegration operation. You must first save, or have previously saved, the user third party integration credentials in order for RevCent to connect and pull assets necessary to complete the select values."},"options":{"type":"array","description":"The available options for the select field. If 'third_party_asset' is set to false, available values will be contained in the array. If 'third_party_asset' is set to true, the options are available when retrieving a single user third party integration via the GetUserThirdPartyIntegration operation. When retrieving a single user third party integration, RevCent will display the options pulled from the third party integration's API. You must first save, or have previously saved, the user third party integration credentials in order for RevCent to connect and pull options necessary to complete the select values.","items":{"type":"string"}},"multiple":{"type":"boolean","description":"Whether the user can select multiple options for the select field. If true, more than one item can provided in the options.value array when creating or editing a user third party integration."}}}}}}}}}}}}}]}}},"description":"Successful response."},"default":{"content":{"application/json":{"schema":{"description":"","properties":{"api_call_id":{"type":"string","description":"A 20 character API call ID.","minLength":20,"maxLength":20},"api_call_unix":{"description":"Unix timestamp of when the API call was initiated.","type":"integer","format":"unix-time"},"code":{"description":"This value indicates that there is an error. Will always be 0.","type":"integer","enum":[0]},"error_code":{"description":"The specific error code.","type":"string"},"message":{"description":"A human readable description of the error.","type":"string"},"result":{"description":"A description of the API call result.","type":"string"}},"title":"APIStandardErrors","type":"object","additionalProperties":false}}},"description":"Error response."}}}