RevCent API

You are viewing the latest API Docs, version 2. If you are looking for the legacy version 1 API Docs, please click here

OpenAPI 3.1

The RevCent API is a HTTP REST API, allowing only GET and POST requests. It conforms to the OpenAPI 3.1 standard. Download or import our OpenAPI 3.1 API specification: https://api.revcent.com/v2/openapi.json

API Endpoint
https://api.revcent.com/v2
Whitelist RevCent

All requests from RevCent will use the following IP addresses:
34.224.171.255
52.3.146.218
54.174.155.188

RevCent MCP

If you wish to access your account via AI, check out the RevCent MCP which allows AI to connect directly to RevCent and conduct over 200 operations for your account. Connect your personal AI, IDE's, external AI Agents and more. Learn more, including how to connect, at the RevCent MCP Docs page.


Authentication

Use your RevCent API Key to make authenticated requests to the V2 API. The API Key is sent within the header of an API request. Read more about creating an API Key at our Knowledge Base

x-api-key Header

The x-api-key header should be present in every API request. Create an API account and retrieve the key in the web UI. We do not recommend using the root API keys which were created by RevCent when you signed up. Instead, create new keys for specific implementations.

curl -G https://api.revcent.com/v2 \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \

Permissions

When creating an API key you can limit the key to perform only specific actions. We recommend you use the principle of least privilege, where you only enable specific API methods based on the use case per key.

Live/Test Keys

An API key can be set to Test mode or Live mode. This allows you to test the API and view results using the test/live mode toggle in the web app. Read more about Live vs Test mode at our Knowledge Base

Depending on the key used, RevCent will retrieve live or test items, as well as use the appropriate merchant gateway endpoint when processing payments. For example, if you use a test key for a payment request, RevCent will use the test endpoint for the merchant gateway and a live key will use the live merchant gateway endpoint.


Errors

The V2 API uses conventional HTTP status codes to indicate the success or failure of an API request. Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error such a missing required parameter, a payment failure, etc. Codes in the 5xx range indicate an error with RevCent.

When a 4XX response is returned, the code property in the response body will indicate the type of error. All 4xx errors also include a message property that briefly explains the reason for failure, allowing for possible remedy and re-attempt.

It is recommended that you do not display raw API responses directly to visitors on checkout. Instead, use the HTTP status code and the response body code property to create a custom message to display to the visitor.

HTTP Status Codes

There are seven potential HTTP status codes which can be returned by the RevCent V2 API. Use status codes as the starting point to determine the outcome of a request, then use the body of the response.

Do not confuse a HTTP status code with the code property contained within the response body. A HTTP status code is a standard for HTTP requests. The code property contained within an API call response body is specific to RevCent.

HTTP Code Type Description
200 Success The request was successful, either for non-payment or payment requests.
400 Non-Payment Error The API request contains an error and should be handled internally by the user.
401 Unauthorized The API key is either missing, invalid or disabled.
402 Payment Error A payment attempt failed, either due to decline, merchant error or fraud.
404 Not Found A requested entity was not found.
405 Method Not Allowed The requested HTTP method is not allowed. Only GET and POST requests are accepted.
500 RevCent Error An error occurred within the RevCent system.

Non-Payment Error

For non-payment errors the HTTP status code will be 400 and the code property will equal 0. The message property will describe the reason for the request error.

Body Code Type Description
0 Generic Error The request failed due to a user error.
Response 400
{
    "code": 0,
    "error_code": "E0037",
    "message": "The payment profile you entered is invalid",
    "result": "Error"
}

Payment Error

For failed payment attempts the HTTP status code will be 402, and the code property within the response body will indicate the type of payment failure. The gateway_raw_response property is the response from the gateway indicating why the payment attempt failed.

There are potential values for the code property within the response body, either 2, 3, or 4, indicating the type of gateway failure.

Body Code Type Description
2 Payment Declined The payment gateway declined the transaction. Use the gateway raw response to determine the exact error and reason.
3 Gateway Error The payment gateway returned an error. Use the gateway raw response to determine the exact error and reason.
4 Gateway Hold The payment gateway held the transaction.
Response 402
{
    "code": 2,
    "message": "The gateway declined the transaction.",
    "gateway_raw_response": {
        "response": "2",
        "responsetext": "Insufficient funds",
        "authcode": "      ",
        "transactionid": "123456789",
        "avsresponse": "Y",
        "cvvresponse": "M"
    },
    "result": "Declined."
}

Fraud Error

When either Sentinel or a third party service deems a request is fraud, the HTTP status code will be 402, and the code property will always equal 5. The fraud_detection_response property will provide detailed information about the fraud.

It is recommended that you do not display a fraud response directly to the visitor on checkout when fraud is detected. Instead, display a generic payment declined message to the fraudster, not letting them know you have detected fraud.

Additional payment attempts the fraudster makes will be immediately blocked by RevCent and never reach a gateway. RevCent wants fraudsters to continue to attempt payments, as RevCent will internally save information such as additional stolen cards and tracking visitor information.

Body Code Type Description
5 Fraud Detected Fraud was detected, either by Sentinel or third party service.
Response 402
{
    "code": 5,
    "message": "Payment not processed.",
    "fraud_detected": true,
    "fraud_detection_created": [
        "kyy9RE8HNo91lAZbwq0X"
    ],
    "fraud_detection_response": {...},
    "result": "Payment request failed."
}

Not Found Error

For not found errors the HTTP status code will be 404 and the code property will equal 0.

Body Code Type Description
0 Generic Error The request failed due to a user error.
Response 404
{
    "code": 0,
    "message": "The requested item does not exist.",
    "result": "Not Found"
}

Idempotent Requests

The RevCent API supports idempotency for safely retrying POST requests without performing the same specific operation twice.

This is useful for retrying disrupted requests while avoiding the chance of double charging a customer. To perform an idempotent request, provide the idempotency_key property within the request object. RevCent will check existing idempotency keys submitted within the past 24 hours for the API account. If an idempotency key match is found, the API request is immediately rejected and not saved.

Important: Only use idempotency keys if you know when and why to use them. Resubmitting the same idempotency key when purposely retrying a declined payment request will result in an error, and the retry payment will never be attempted.

idempotency_key

Provide the idempotency_key property in the JSON body of a POST request. The idempotency key must be at least 10 characters in length and can be up to 255 characters in length. We recommended you use V4 UUIDs.

curl -X POST https://api.revcent.com/v2/sales \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
--data-raw '{
    "idempotency_key": "2c74f520-2b7f-44ea"
}'

Filtering

When retrieving a list of multiple items there are four required parameters as well as the option to include one or more filters. Each request has a specific set of filters available, so please refer to each request schema.

Required Parameters

Any GET requests which return more than one item, i.e. not ID specific, must include the date_start, date_end, limit and page URL parameters. Omitting any required parameters will result in an error.

URL Param Type Description
date_start Unix Timestamp The date range start date as a unix timestamp.
date_end Unix Timestamp The date range end date as a unix timestamp.
limit Integer The limit on the number of items to be returned.
page Integer The requested page.
curl -G https://api.revcent.com/v2/customers \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \
-d date_start=1627876799 \
-d date_end=1628049599 \
-d limit=25 \
-d page=1

Multi-Value Filter

You can submit multiple values for the same filter by including the URL parameter more than once in a GET request. RevCent will group same URL parameters when filtering items.

In the example CURL request we wish to filter a list of customers by campaign using the campaign_filter parameter. However, we want to filter using multiple campaign IDs. We provide the campaign_filter URL parameter twice, each time being a specific campaign ID.

curl -G https://api.revcent.com/v2/customers \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \
-d date_start=1627876799 \
-d date_end=1628049599 \
-d limit=25 \
-d page=1 \
-d campaign_filter="mJ1zZoOobEuP8pnWKXd1" \
-d campaign_filter="LYE26MW8Rlh5VbJmlp2l"

Metadata Filter

When making a get request for a list of items you have an optional metadata_filter parameter, which can be multi-value. Each metadata_filter parameter submitted is an object having a name and value property.

There are two methods when providing one or more metadata_filter parameters, however, you should only use one method in production. You can use a stringified JSON object, or use an array index i.e. metadata_filter[i][name] and metadata_filter[i][value].

In the two example CURL requests we show the different methods, where both methods would produce the same filtered result.

In the first example CURL request we wish to filter a list of sales by metadata using a stringified JSON object for each metadata_filter. Notice how we can include the metadata_filter multiple times with separate stringified JSON objects.

In the second example CURL request we use the array index method to match the name/value pair for each metadata_filter. Notice how we can include the metadata_filter multiple times, separating each filter name/value pair using an array index.

curl -G https://api.revcent.com/v2/sales \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \
-d date_start=1627876799 \
-d date_end=1628049599 \
-d limit=25 \
-d page=1 \
--data-urlencode metadata_filter="{\"name\":\"facebook_ad\",\"value\":\"pets\"}" \
--data-urlencode metadata_filter="{\"name\":\"landing_page\",\"value\":\"v1\"}"
curl -G https://api.revcent.com/v2/sales \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \
-d date_start=1627876799 \
-d date_end=1628049599 \
-d limit=25 \
-d page=1 \
--data-urlencode metadata_filter[0][name]="facebook_ad" \
--data-urlencode metadata_filter[0][value]="pets" \
--data-urlencode metadata_filter[1][name]="landing_page" \
--data-urlencode metadata_filter[1][value]="v1" 

Customer ID Filter

Utilize the customer_id URL parameter when you wish to return a list of items specific to a customer.

Note: The customer_id filter is not a multi-value filter. It is limited to one customer ID and additional customer_id parameters will be ignored.

In the example CURL request, we wish to receive a list of transactions specific to the customer with an ID of 4r158EzJmmcVM69dNLkg. This will limit transactions only to this specific customer. If we omitted the customer_id parameter, all transactions will be returned regardless of customer.

curl -G https://api.revcent.com/v2/transactions \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \
-d date_start=1627876799 \
-d date_end=1628049599 \
-d limit=25 \
-d page=1 \
-d customer_id="4r158EzJmmcVM69dNLkg"

Pagination

Pagination only applies to GET requests which return more than one item. All get requests which return multiple items will have page info contained in the response. Utilize the page info returned, along with the original URL date_start, date_end and limit parameters, to paginate.

URL Params

When requesting a list of items, the date_start, date_end, page and limit parameters are required. Utilize all four parameters, specifically the limit and page parameters, to paginate across multiple pages of results.

curl -G https://api.revcent.com/v2/customers \
-H "x-api-key: YOUR_REVCENT_API_KEY" \
-H "Accept: application/json" \
-d date_start=1627876799 \
-d date_end=1628049599 \
-d limit=25 \
-d page=1

Page Info

The response from a list request will contain the results array, as well as page info. The page info tells you the current page, the total number of pages and the number of items per page.

In the example response, we are using a limit of 25, currently at page 1, with a total of 4 pages. If you wanted the next page (page 2), you would use the same date_start and date_end URL params, along with limit=25 page=2.

Response
{
    "current_count": 25,
    "current_page": 1,
    "results": [...],
    "total_count": 79,
    "total_pages": 4
}

AI Assistants

An AI Assistant runs autonomously when triggered via events, on a schedule or on demand. RevCent handles the entire orchestration of an AI Assistant run, including providing the AI with all necessary information and context, running any tool calls and more.

Use the API to get a list of AI Assistants, get a single AI Assistant, create an AI Assistant, edit an AI Assistant, delete an AI Assistant or trigger an AI Assistant.


Get AI Assistants

Returns a list of AI Assistants previously created.

The page and limit URL parameters are required.

API Permission: ai_assistant:retrieve

get

/ai_assistants

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_assistants
Response200

Create An AI Assistant

Create an AI Assistant, which will issue a unique AI Assistant ID.

API Permission: ai_assistant:create

post

/ai_assistants

Request Body


View Properties
post/ai_assistants
Response200

Get An AI Assistant

Retrieve the details of a specific AI Assistant.

API Permission: ai_assistant:retrieve

get

/ai_assistants/{ai_assistant_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_assistants/{ai_assistant_id}
Response200

Edit An AI Assistant

Edit a previously created AI Assistant using the AI Assistant ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the AI Assistant, then only include the name property in the request body.

API Permission: ai_assistant:edit

post

/ai_assistants/{ai_assistant_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/ai_assistants/{ai_assistant_id}
Response200

Trigger An AI Assistant

Trigger a specific AI Assistant using the AI Assistant ID and trigger path. Triggering an AI Assistant will generate a unique AI Thread that will run autonomously.

Note: You can only trigger an AI Assistant with a trigger setting of 'on_demand' using the API.

API Permission: ai_assistant:trigger

post

/ai_assistants/{ai_assistant_id}/trigger

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/ai_assistants/{ai_assistant_id}/trigger
Response200

Delete An AI Assistant

Delete a specific AI assistant using the AI assistant ID and delete path.

API Permission: ai_assistant:delete

post

/ai_assistants/{ai_assistant_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/ai_assistants/{ai_assistant_id}/delete
Response200

AI Memos

An AI Memo is created when an AI Assistant calls the AI Memo Create API method during the run of an AI Thread. Note: Only an AI Assistant can create an AI Memo.

Use the API to get a list of AI Memos created during a specified date range, get a single AI Memo by ID or delete an AI Memo.


Get AI Memos

Returns a list of AI Memos previously created. Note: AI Memos are stored for a maximum of 7 days since creation.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 7 day period.

Schema: GetAIMemos
API Permission: ai_memo:retrieve

get

/ai_memos

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_memos
Response200

Create An AI Memo

Create an AI Memo.

Note: Only an AI Assistant can create an AI Memo. An AI Memo is created when an AI Assistant calls the AI Memo Create API method during the run of an AI thread.

Schema: CreateAIMemo
API Permission: ai_memo:create

post

/ai_memos

Request Body


View Properties
post/ai_memos
Response200

Get An AI Memo

Retrieve the details of a specific AI Memo.

Schema: GetAIMemo
API Permission: ai_memo:retrieve

get

/ai_memos/{ai_memo_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_memos/{ai_memo_id}
Response200

Delete An AI Memo

Delete a specific AI Memo using the AI Memo ID and delete path.

Schema: DeleteAIMemo
API Permission: ai_memo:delete

post

/ai_memos/{ai_memo_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/ai_memos/{ai_memo_id}/delete
Response200

Mark An AI Memo As Read

Mark a specific AI Memo as read using the AI Memo ID and mark as read path.

This is operation is meant for keeping track of which AI Memos have already been reviewed manually, by AI or external systems. This operation should be conducted after retrieving the AI Memo via the GetAIMemo operation.

API Permission: ai_memo:mark_as_read

post

/ai_memos/{ai_memo_id}/mark_as_read

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/ai_memos/{ai_memo_id}/mark_as_read
Response200

AI Prompts

An AI Prompt is created via the AI Playground in the web app or via API. An AI Prompt is a saved message intended for conversing with AI without having to manually retype a repetitive message.

Use the API to get a list of AI Prompts created during a specified date range, get a single AI Prompt, create an AI Prompt, edit an AI Prompt or delete an AI Prompt.


Get AI Prompts

Returns a list of AI Prompts previously created. Only names are returned when retrieving multiple AI Prompts. Get the details of the AI Prompt, including the prompt itself, using the GetAIPrompt operation.

The page and limit URL parameters are required.

Schema: GetAIPrompts
API Permission: ai_prompt:retrieve

get

/ai_prompts

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_prompts
Response200

Create An AI Prompt

Create an AI Prompt.

API Permission: ai_prompt:create

post

/ai_prompts

Request Body


View Properties
post/ai_prompts
Response200

Get An AI Prompt

Retrieve the details of a specific AI Prompt.

Schema: GetAIPrompt
API Permission: ai_prompt:retrieve

get

/ai_prompts/{ai_prompt_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_prompts/{ai_prompt_id}
Response200

Edit An AI Prompt

Edit an AI Prompt. Only provide the properties you wish to modify.

Schema: EditAIPrompt
API Permission: ai_prompt:edit

post

/ai_prompts/{ai_prompt_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/ai_prompts/{ai_prompt_id}
Response200

Delete An AI Prompt

Delete a specific AI Prompt using the AI Prompt ID and delete path.

API Permission: ai_prompt:delete

post

/ai_prompts/{ai_prompt_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/ai_prompts/{ai_prompt_id}/delete
Response200

AI Threads

An AI Thread is created when an AI Assistant is triggered via API, account event or web app.

Use the API to get a list of AI Threads created during a specified date range or get a single AI Thread by ID.


Get AI Threads

Returns a list of AI Threads previously created. Note: AI Threads are stored for a maximum of 60 days since creation.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a two (2) day period.

Schema: GetAIThreads
API Permission: ai_thread:retrieve

get

/ai_threads

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_threads
Response200

Get An AI Thread

Retrieve the details of a specific AI Thread.

Schema: GetAIThread
API Permission: ai_thread:retrieve

get

/ai_threads/{ai_thread_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_threads/{ai_thread_id}
Response200

Cancel An AI Thread

Cancel a specific AI thread using the AI thread ID and cancel path. The thread must have a status of Running or Timer.

API Permission: ai_thread:cancel

post

/ai_threads/{ai_thread_id}/cancel

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/ai_threads/{ai_thread_id}/cancel
Response200

AI Voice Agents

An AI Voice Agent is a fully managed bi-directional voice communication between a human and AI. RevCent handles the orchestration and linking of a Twilio call to OpenAI's realtime API. You create the voice agent using the API, and RevCent handles both inbound and outbound calls.

Use the API to get a list of AI Voice Agents, get a single AI Voice Agent, create an AI Voice Agent, edit an AI Voice Agent, delete an AI Voice Agent or trigger an AI Voice Agent.


Get AI Voice Agents

Returns a list of AI Voice Agents previously created.

The page and limit URL parameters are required.

API Permission: ai_voice_agent:retrieve

get

/ai_voice_agents

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_voice_agents
Response200

Create An AI Voice Agent

Create an AI Voice Agent, which will issue a unique AI Voice Agent ID.

API Permission: ai_voice_agent:create

post

/ai_voice_agents

Request Body


View Properties
post/ai_voice_agents
Response200

Get An AI Voice Agent

Retrieve the details of a specific AI Voice Agent.

API Permission: ai_voice_agent:retrieve

get

/ai_voice_agents/{ai_voice_agent_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_voice_agents/{ai_voice_agent_id}
Response200

Edit An AI Voice Agent

Edit a previously created AI Voice Agent using the AI Voice Agent ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the AI Voice Agent, then only include the name property in the request body.

API Permission: ai_voice_agent:edit

post

/ai_voice_agents/{ai_voice_agent_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/ai_voice_agents/{ai_voice_agent_id}
Response200

Trigger An AI Voice Agent

Trigger a specific AI Voice Agent using the AI Voice Agent ID and trigger path. Note: Only AI Voice Agents with a Call Method = 'Outbound' and Trigger = 'On Demand' can be triggered via API. Triggering an AI Voice Agent will immediately generate an outbound AI Voice Call that will dial the customer phone number associated with the item.

API Permission: ai_voice_agent:trigger

post

/ai_voice_agents/{ai_voice_agent_id}/trigger

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/ai_voice_agents/{ai_voice_agent_id}/trigger
Response200

Delete An AI Voice Agent

Delete a specific AI voice agent using the AI voice agent ID and delete path.

API Permission: ai_voice_agent:delete

post

/ai_voice_agents/{ai_voice_agent_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/ai_voice_agents/{ai_voice_agent_id}/delete
Response200

AI Voice Calls

An AI Voice Call is created when an AI Voice Agent is triggered via API, account event or inbound call.

Use the API to get a list of AI Voice Calls created during a specified date range or get a single AI Voice Call by ID.


Get AI Voice Calls

Returns a list of AI Voice Calls previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a two (2) day period.

API Permission: ai_voice_call:retrieve

get

/ai_voice_calls

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_voice_calls
Response200

Get An AI Voice Call

Retrieve the details of a specific AI Voice Call.

API Permission: ai_voice_call:retrieve

get

/ai_voice_calls/{ai_voice_call_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_voice_calls/{ai_voice_call_id}
Response200

AI Voice Snippets

AI Voice Snippets are a subset of AI Voice Agent markdown instructions. AI Voice Snippets give you the ability to create re-usable content throughout multiple agents' instructions, and only modify the re-usable content in one place.

Snippets should only be used where several voice agents share common instructions that are frequently changed.

Use the API to get a list of AI Voice Snippets, get a single AI Voice Snippet, create a voice snippet, edit a voice snippet and delete a voice snippet.


Get AI Voice Snippets

Returns a list of AI Voice Snippets previously created.

The page and limit URL parameters are required.

API Permission: ai_voice_snippet:retrieve

get

/ai_voice_snippets

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_voice_snippets
Response200

Create An AI Voice Snippet

Create an AI Voice Snippet, which will issue a unique AI Voice Snippet ID.

API Permission: ai_voice_snippet:create

post

/ai_voice_snippets

Request Body


View Properties
post/ai_voice_snippets
Response200

Get An AI Voice Snippet

Retrieve the details of a specific AI Voice Snippet.

API Permission: ai_voice_snippet:retrieve

get

/ai_voice_snippets/{ai_voice_snippet_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/ai_voice_snippets/{ai_voice_snippet_id}
Response200

Edit An AI Voice Snippet

Edit a previously created AI Voice Snippet using the AI Voice Snippet ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the AI Voice Snippet, then only include the name property in the request body.

API Permission: ai_voice_snippet:edit

post

/ai_voice_snippets/{ai_voice_snippet_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/ai_voice_snippets/{ai_voice_snippet_id}
Response200

Delete An AI Voice Snippet

Delete a specific AI voice snippet using the AI voice snippet ID and delete path.

API Permission: ai_voice_snippet:delete

post

/ai_voice_snippets/{ai_voice_snippet_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/ai_voice_snippets/{ai_voice_snippet_id}/delete
Response200

API Calls

An API call is created when a request is made to the API. All API requests have an associated API call, providing an audit mechanism to review past requests.

Use the API to get a list of API calls created during a specified date range and get a single API call by ID.


Get API Calls

Returns a list of API calls previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a two (2) day period.

Schema: GetAPICalls
API Permission: api_call:retrieve

get

/api_calls

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/api_calls
Response200

Get An API Call

Retrieve the details of a specific API call previously created using the API call ID.

Schema: GetAPICall
API Permission: api_call:retrieve

get

/api_calls/{api_call_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/api_calls/{api_call_id}
Response200

BigQuery

BigQuery is Google's serverless, highly scalable, and cost-effective multi-cloud data warehouse designed for business agility. RevCent's BigQuery integration allows you to run SQL queries on your RevCent data which is stored in BigQuery.

Use the API to get a list of BigQuery tables with schemas, get a single BigQuery table by table name with schema and run a SQL query on your BigQuery tables.


Run A BigQuery Query

Execute a BigQuery query on user data and receive the results.

Note: Query runs are limited to a total of 30 seconds. Please optimize queries to reduce potential timeouts.

Before running a query, it is recommended to first use the GetBigQueryTables method to retrieve all BigQuery tables and their schemas to ensure proper table referencing within the query and to optimize query performance.

Directly download all table schemas here.

API Permission: bigquery:run_query

post

/bigquery

Request Body


View Properties
post/bigquery
Response200

Get BigQuery Tables

Returns an object containing all BigQuery tables and their schemas for use in the BigQueryRunQuery operation.

Directly download all table schemas here.

API Permission: bigquery_table:retrieve

get

/bigquery_tables
get/bigquery_tables
Response200

Get A BigQuery Table

Retrieve the details of a specific BigQuery table including its schema.

API Permission: bigquery_table:retrieve

get

/bigquery_tables/{table_name}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/bigquery_tables/{table_name}
Response200

BIN Profiles

A BIN profile allows you to store a list of credit card BIN's, i.e. the first 6 of a credit card, for use in filtering, reporting and more.

Use the API to get a list of BIN profiles, get a single BIN profile by ID, create a BIN profile, modify a BIN profile and delete a BIN profile.


Get BIN Profiles

Returns a list of BIN profiles created with your account. To get the actual BIN's within a BIN profile, use the GetBinProfile method and provide the BIN profile ID.

API Permission: bin_profile:retrieve

get

/bin_profiles

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/bin_profiles
Response200

Create A BIN Profile

Create a BIN Profile, which will issue a unique BIN Profile ID.

API Permission: bin_profile:create

post

/bin_profiles

Request Body


View Properties
post/bin_profiles
Response200

Get A BIN Profile

Retrieve the details of a specific BIN profile.

API Permission: bin_profile:retrieve

get

/bin_profiles/{bin_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/bin_profiles/{bin_profile_id}
Response200

Edit A BIN Profile

Edit a previously created BIN Profile using the BIN Profile ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the BIN Profile, then only include the name property in the request body.

API Permission: bin_profile:edit

post

/bin_profiles/{bin_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/bin_profiles/{bin_profile_id}
Response200

Delete A BIN Profile

Delete a specific BIN profile using the BIN profile ID and delete path.

API Permission: bin_profile:delete

post

/bin_profiles/{bin_profile_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/bin_profiles/{bin_profile_id}/delete
Response200

Campaigns

A campaign is a way to organize and filter various items within your account.

Use the API to get a list of campaigns created during a specified date range, get a single campaign by ID, create a campaign and modify a campaign.


Get Campaigns

Returns a list of campaigns previously created.

Page and limit URL parameters are required.

Schema: GetCampaigns
API Permission: campaign:retrieve

get

/campaigns

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/campaigns
Response200

Create A Campaign

Create a campaign, which will issue a unique campaign ID.

API Permission: campaign:create

post

/campaigns

Request Body


View Properties
post/campaigns
Response200

Get A Campaign

Retrieve the details of a previously created campaign using the campaign ID.

Schema: GetCampaign
API Permission: campaign:retrieve

get

/campaigns/{campaign_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/campaigns/{campaign_id}
Response200

Edit A Campaign

Edit a previously created campaign using the campaign ID.

Schema: EditCampaign
API Permission: campaign:edit

post

/campaigns/{campaign_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/campaigns/{campaign_id}
Response200

Chargebacks

A chargeback is always associated with an existing credit card transaction within RevCent.

Use the API to get a list of chargebacks created during a specified date range, get a single chargeback by ID, get chargebacks specific to a customer, create a chargeback, modify a chargeback and generate a chargeback document to fight a chargeback.


Get Chargebacks

Returns a list of chargebacks previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: chargeback:retrieve

get

/chargebacks

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/chargebacks
Response200

Create A Chargeback

Create a chargeback. A chargeback must be associated with a previous credit card transaction. To associate a previous transaction use the transaction_id or gateway_transaction_id property within the request body for the transaction associated.

API Permission: chargeback:create

post

/chargebacks

Request Body


View Properties
post/chargebacks
Response200

Get A Chargeback

Retrieve the details of a previously created chargeback using the chargeback ID.

API Permission: chargeback:retrieve

get

/chargebacks/{chargeback_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/chargebacks/{chargeback_id}
Response200

Edit A Chargeback

Edit the details of a specific chargeback using the chargeback ID.

API Permission: chargeback:edit

post

/chargebacks/{chargeback_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/chargebacks/{chargeback_id}
Response200

Search Chargebacks

Search previously created chargebacks using a search term.

Useful for finding a chargeback when you do not know the chargeback ID and wish to retrieve the details of a specific chargeback. Once a chargeback has been found, use an individual search results' id property and the GetChargeback operation to retrieve the chargeback details.

API Permission: chargeback:search

get

/chargebacks/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/chargebacks/search
Response200

Create A Chargeback Document

This is a method to create a chargeback mitigation document from an originating sale by searching for the sale using an item_type and item_value. The results contain detailed information on the originating sale including tracking visitor and shipping information.

A chargeback document allows you to retrieve important details regarding a originating sale in raw JSON with a URL to a docx file.

Note: This is not overall system documentation. This is primarily used as a tool for chargeback mitigation, i.e. to prove an customer purchased an item with tracking visitor details, as well as shipping information.

API Permission: document:retrieve

post

/documents

Request Body


View Properties
post/documents
Response200

Checks

A check is created during a sale with a check_direct payment type.

Use the API to get a list of checks created during a specified date range, get a single check by ID and get checks specific to a customer.

Note: If you wish to refund a check you instead refund the entity that the check is associated using either the VoidSale, RefundProductSale, RefundTax or RefundShipment operations.


Get Check Directs

Returns a list of check directs previously.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: check_direct:retrieve

get

/check_directs

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/check_directs
Response200

Get A Check Direct

Retrieve the details of a previously created check using the check ID.

API Permission: check_direct:retrieve

get

/check_directs/{check_direct_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/check_directs/{check_direct_id}
Response200

Coupons

A coupon is created within the RevCent web app and can be applied to initial sales, subsequent subscription renewals and future customer purchases based on settings.

Use the API the validate a specific coupon code.


Validate A Coupon Code

Validate a coupon using the coupon code. A rejected coupon code will display an error explaining the reason for rejection, while an applicable coupon code will display the discount type and amount.

API Permission: coupon:validate

get

/coupons/validate

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/coupons/validate
Response200

Customers

A customer is created directly using the API or during the creation of a sale.

Use the API to get a list of customers created during a specified date range, get a single customer by ID, create a customer, modify a customer, enable or disable a customer, add a credit card to a customer, add a customer to a customer group, remove a customer from a customer group and search all customers.


Get Customers

Returns a list of customers previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetCustomers
API Permission: customer:retrieve

get

/customers

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customers
Response200

Create A Customer

Create a customer prior to any purchase attempts. Useful when wanting to create prospects prior to any purchase attempt. Note: RevCent will automatically create a customer during an initial sale if the customer does not exist.

API Permission: customer:create

post

/customers

Request Body


View Properties
post/customers
Response200

Get A Customer

Retrieve the details of a previously created customer using the customer ID.

If you do not have the customer ID, use the SearchCustomers > GetCustomer method. Search for a customer using the SearchCustomers operation using a search term, then use the id property within an individual search result with the GetCustomer operation.

Important: If using the SearchCustomers > GetCustomer method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed the customer using a secondary non-provided value, such as the ZIP code in the GetCustomer response, before providing information or taking action.

Schema: GetCustomer
API Permission: customer:retrieve

get

/customers/{customer_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customers/{customer_id}
Response200

Edit A Customer

Edit a specific customer using the customer ID.

Schema: EditCustomer
API Permission: customer:edit

post

/customers/{customer_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/customers/{customer_id}
Response200

Enable A Customer

Enable a specific customer using the customer ID and enable path.

API Permission: customer:enable

post

/customers/{customer_id}/enable

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customers/{customer_id}/enable
Response200

Disable A Customer

Disable a specific customer using the customer ID and disable path.

API Permission: customer:disable

post

/customers/{customer_id}/disable

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customers/{customer_id}/disable
Response200

Add Card To Customer

Add a credit card to an existing customer.

API Permission: customer:add_card

post

/customers/{customer_id}/add_card

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/customers/{customer_id}/add_card
Response200

Add Customer To Group

Add a customer to one or more customer groups.

API Permission: customer:add_to_group

post

/customers/{customer_id}/add_to_group

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/customers/{customer_id}/add_to_group
Response200

Remove Customer From Group

Remove a customer from one or more customer groups.

API Permission: customer:remove_from_group

post

/customers/{customer_id}/remove_from_group

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/customers/{customer_id}/remove_from_group
Response200

Search Customers

Search previously created customers using a search term.

Useful for finding a customer when you do not know the customer ID and wish to retrieve the details of a specific customer. Once a customer has been found, use an individual search results' id property and the GetCustomer operation to retrieve the customer details. A recommended search term is the customer email address, or a combination of the first name, last name and zip code.

Important: If using the SearchCustomers and GetCustomer method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed the customer using a secondary non-provided value, such as the ZIP code in the GetCustomer response, before providing information or taking action.

API Permission: customer:search

get

/customers/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customers/search
Response200

Customer Cards

A customer credit card is created and stored during the creation of a sale with a credit card payment type or directly using the API by adding a credit card to a customer. Customer card data is stored by RevCent on behalf of users in a PCI compliant secure environment. RevCent does not allow the retrieval of a raw credit card number for a customer card.

Use the API to get a list of customer credit cards created during a specified date range, get a single customer credit card by ID, get credit cards specific to a customer, enable or disable a customer credit card, set a customer credit card as the default payment method, delete a customer credit card and search all customer credit cards.


Get Customer Cards

Returns a list of customer cards previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: customer_card:retrieve

get

/customer_cards

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customer_cards
Response200

Get A Customer Card

Retrieve the details of a specific customer card.

API Permission: customer_card:retrieve

get

/customer_cards/{customer_card_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customer_cards/{customer_card_id}
Response200

Enable A Customer Card

Enable a specific customer card using the customer card ID and enable path.

API Permission: customer_card:enable

post

/customer_cards/{customer_card_id}/enable

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customer_cards/{customer_card_id}/enable
Response200

Disable A Customer Card

Disable a specific customer card using the customer card ID and disable path.

API Permission: customer_card:disable

post

/customer_cards/{customer_card_id}/disable

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customer_cards/{customer_card_id}/disable
Response200

Set Default Customer Card

Set an existing customer card as its customers' default payment method using the customer card ID and set_default path.

API Permission: customer_card:set_default

post

/customer_cards/{customer_card_id}/set_default

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customer_cards/{customer_card_id}/set_default
Response200

Delete A Customer Card

Delete a specific customer card using the customer card ID and delete path.

API Permission: customer_card:delete

post

/customer_cards/{customer_card_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customer_cards/{customer_card_id}/delete
Response200

Search Customer Cards

Search previously created customer cards using a search term.

Useful for finding a customer card when you do not know the customer card ID and wish to retrieve the details of a specific customer card. Once a customer card has been found, use an individual search results' id property and the GetCustomerCard operation to retrieve the customer card details.

Important: If using the SearchCustomerCards and GetCustomerCard method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the customer card using a secondary non-provided value, such as the customer email in the GetCustomerCard response, before providing information or taking action.

API Permission: customer_card:search

get

/customer_cards/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customer_cards/search
Response200

Customer Groups

A customer group is a way to group customers based on unique and granular qualifiers.

Use the API to get a list of customer groups, get a single customer group value by ID, create a customer group, modify a customer group and delete a customer group.


Get Customer Groups

Returns a list of customer groups previously created.

The page and limit URL parameters are required.

API Permission: customer_group:retrieve

get

/customer_groups

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customer_groups
Response200

Create A Customer Group

Create a customer group, which will issue a unique customer group ID.

API Permission: customer_group:create

post

/customer_groups

Request Body


View Properties
post/customer_groups
Response200

Get A Customer Group

Retrieve the details of a previously created customer group using the customer group ID.

API Permission: customer_group:retrieve

get

/customer_groups/{customer_group_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customer_groups/{customer_group_id}
Response200

Edit A Customer Group

Edit a previously created customer group using the customer group ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the customer group, then only include the name property in the request body.

API Permission: customer_group:edit

post

/customer_groups/{customer_group_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/customer_groups/{customer_group_id}
Response200

Delete A Customer Group

Delete a specific customer group using the customer group ID and delete path.

API Permission: customer_group:delete

post

/customer_groups/{customer_group_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customer_groups/{customer_group_id}/delete
Response200

Customer Portals

A customer portal is a way for customers to manage their account and subscriptions using a custom domain, including the ability to embed as an iframe on your existing stores' website.

Use the API to get a list of customer portals, get a single customer portal by ID, create a customer portal, modify a customer portal and delete a customer portal.


Get Customer Portals

Returns a list of customer portals previously created.

The page and limit URL parameters are required.

API Permission: customer_portal:retrieve

get

/customer_portals

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customer_portals
Response200

Create A Customer Portal

Create a Customer Portal, which will issue a unique Customer Portal ID. You will have the ability to embed the portal as an iFrame on your own website when properly configured with the same domain tracking domain associated.

Note: A SMTP Profile, tracking domain and ReCaptcha must have been previously set up before creating a customer portal.

API Permission: customer_portal:create

post

/customer_portals

Request Body


View Properties
post/customer_portals
Response200

Get A Customer Portal

Retrieve the details of a previously created customer portal using the customer portal ID.

API Permission: customer_portal:retrieve

get

/customer_portals/{customer_portal_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/customer_portals/{customer_portal_id}
Response200

Edit A Customer Portal

Edit a previously created Customer Portal using the Customer Portal ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the Customer Portal, then only include the name property in the request body.

API Permission: customer_portal:edit

post

/customer_portals/{customer_portal_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/customer_portals/{customer_portal_id}
Response200

Delete A Customer Portal

Delete a specific Customer Portal using the Customer Portal ID and delete path.

API Permission: customer_portal:delete

post

/customer_portals/{customer_portal_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/customer_portals/{customer_portal_id}/delete
Response200

Discounts

A discount is created during a sale that has a coupon code or a discount entry.

Use the API to get a list of discounts created during a specified date range, get a single discount by ID and get discounts specific to a customer.


Get Discounts

Returns a list of discounts previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetDiscounts
API Permission: discount:retrieve

get

/discounts

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/discounts
Response200

Get A Discount

Retrieve the details of a specific discount.

Schema: GetDiscount
API Permission: discount:retrieve

get

/discounts/{discount_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/discounts/{discount_id}
Response200

Documentation

Stored documentation is accessible via documentation search. Use a search term to find relevant documentation via vector search. Fetch returned documentation using the documentation result URL.


Search Documentation

Search documentation using a search term. Will return relevant documentation based on a vector search. Use the returned url to fetch the full documentation.

API Permission: documentation:search

get

/documentation/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/documentation/search
Response200

Email Templates

An Email Template is used to send an email to one or more recipients and utilize handlebars syntax for dynamic content.

Use the API to get a list of Email Templates, get a single Email Template, create an Email Template, edit an Email Template or delete an Email Template.


Get Email Templates

Returns a list of Email Templates.

Note: The template html body is not provided when retrieving a list of templates. The template html is provided when using the GetEmailTemplate operation for a specific email template using the template ID.

Only Email Templates with a trigger of 'api_direct' can be used to send a SMTP message via API using the SendSMTPMessage operation.

API Permission: email_template:retrieve

get

/email_templates

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/email_templates
Response200

Create An Email Template

Create an Email Template, which will issue a unique Email Template ID.

API Permission: email_template:create

post

/email_templates

Request Body


View Properties
post/email_templates
Response200

Get An Email Template

Retrieve the details of a specific Email Template. Note: only Email Templates with a trigger of 'api_direct' can be used to send a SMTP message via API using the SendSMTPMessage operation.

API Permission: email_template:retrieve

get

/email_templates/{email_template_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/email_templates/{email_template_id}
Response200

Edit An Email Template

Edit a previously created Email Template using the Email Template ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the Email Template, then only include the name property in the request body.

API Permission: email_template:edit

post

/email_templates/{email_template_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/email_templates/{email_template_id}
Response200

Delete An Email Template

Delete a specific email template using the email template ID and delete path.

API Permission: email_template:delete

post

/email_templates/{email_template_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/email_templates/{email_template_id}/delete
Response200

Fulfillment

There are two different fulfillment entities in RevCent: the site fulfillment center and the user fulfillment account. A site fulfillment center is the third party fulfillment service with a global ID, not associated with a specific user. The user fulfillment account is an individual fulfillment account specific to a fulfillment service (site fulfillment center) which is notified when a shipment is created in RevCent. Shipments are created in RevCent when a shippable product(s) sold is associated with a user fulfillment account. The fulfillment service is notified of a shipment for it to be packaged and shipped.

Use the API to get a list of site fulfillment centers, get a single site fulfillment center by ID, get a list of user fulfillment accounts, get a single user fulfillment account by ID, create a user fulfillment account and modify a user fulfillment account.


Get Fulfillment Accounts

Returns a list of fulfillment accounts previously created.

The page and limit URL parameters are required.

API Permission: fulfillment_account:retrieve

get

/fulfillment_accounts

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/fulfillment_accounts
Response200

Create A Fulfillment Account

Create a Fulfillment Account, which will issue a unique Fulfillment Account ID.

API Permission: fulfillment_account:create

post

/fulfillment_accounts

Request Body


View Properties
post/fulfillment_accounts
Response200

Get A Fulfillment Account

Retrieve the details of a previously created fulfillment account using the fulfillment account ID.

API Permission: fulfillment_account:retrieve

get

/fulfillment_accounts/{fulfillment_account_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/fulfillment_accounts/{fulfillment_account_id}
Response200

Edit A Fulfillment Account

Edit a previously created Fulfillment Account using the Fulfillment Account ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the Fulfillment Account, then only include the name property in the request body.

API Permission: fulfillment_account:edit

post

/fulfillment_accounts/{fulfillment_account_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/fulfillment_accounts/{fulfillment_account_id}
Response200

Delete A Fulfillment Account

Delete a specific fulfillment account using the fulfillment account ID and delete path.

API Permission: fulfillment_account:delete

post

/fulfillment_accounts/{fulfillment_account_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/fulfillment_accounts/{fulfillment_account_id}/delete
Response200

Get Site Fulfillment Centers

Returns a list of site fulfillment centers.

API Permission: site_fulfillment_center:retrieve

get

/site_fulfillment_centers
get/site_fulfillment_centers
Response200

Get A Site Fulfillment Center

Retrieve the details of a specific site fulfillment center.

API Permission: site_fulfillment_center:retrieve

get

/site_fulfillment_centers/{site_fulfillment_center_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/site_fulfillment_centers/{site_fulfillment_center_id}
Response200

Functions

A Function is a snippet of JavaScript code hosted and run by RevCent in a NodeJS environment.

Use the API to get a list of Functions, get a single Function, create a Function, edit a Function, delete a Function or trigger a Function.


Get Functions

Returns a list of Functions.

Note: The function code is not provided when retrieving a list of functions. To get the code for a specific function, use the GetFunction operation with the function ID.

Schema: GetFunctions
API Permission: function:retrieve

get

/functions

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/functions
Response200

Create A Function

Create a Function, which will issue a unique Function ID. RevCent will provision a unique instance to handle the function's code execution securely in a sandboxed environment.

After creating a Function, you can then edit the Function configuration, including the function code and dependencies, using the EditFunction operation with the newly created Function ID.

API Permission: function:create

post

/functions

Request Body


View Properties
post/functions
Response200

Get A Function

Retrieve the details of a specific Function.

Schema: GetFunction
API Permission: function:retrieve

get

/functions/{function_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/functions/{function_id}
Response200

Edit A Function

Edit a previously created Function using the Function ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the Function, then only include the name property in the request body.

Schema: EditFunction
API Permission: function:edit

post

/functions/{function_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/functions/{function_id}
Response200

Trigger A Function

Trigger a specific Function using the Function ID and trigger path. Note: Only Functions configured in the web app with a trigger setting of 'api_direct' are triggerable via the API.

API Permission: function:trigger

post

/functions/{function_id}/trigger

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/functions/{function_id}/trigger
Response200

Delete A Function

Delete a specific function using the function ID and delete path.

API Permission: function:delete

post

/functions/{function_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/functions/{function_id}/delete
Response200

Gateways

There are two different gateway entities in RevCent: the site gateway and the user gateway. A site gateway is the third party payment gateway with a global ID, not associated with a specific user. The user gateway is an individual MID, which is associated with a specific user and has an attached site gateway.

Use the API to get a list of site gateways, get a single site gateway by ID, get a list of user gateways, get a single user gateway by ID, create a user gateway and modify a user gateway.


Get Site Gateways

Returns a list of site gateways.

API Permission: site_gateway:retrieve

get

/site_gateways
get/site_gateways
Response200

Get A Site Gateway

Retrieve the details of a specific site gateway.

API Permission: site_gateway:retrieve

get

/site_gateways/{site_gateway_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/site_gateways/{site_gateway_id}
Response200

Get User Gateways

Returns a list of user gateways.

API Permission: user_gateway:retrieve

get

/user_gateways

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/user_gateways
Response200

Create A User Gateway

Create a user gateway in RevCent. A site gateway is required, along with the correct required fields when creating a user gateway.

API Permission: user_gateway:create

post

/user_gateways

Request Body


View Properties
post/user_gateways
Response200

Get A User Gateway

Retrieve the details of a specific user gateway.

API Permission: user_gateway:retrieve

get

/user_gateways/{user_gateway_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/user_gateways/{user_gateway_id}
Response200

Edit A User Gateway

Edit a specific user gateway using the user_gateway ID.

API Permission: user_gateway:edit

post

/user_gateways/{user_gateway_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/user_gateways/{user_gateway_id}
Response200

Gateway Groups

A gateway group is used as an organizer for user gateways as well as within advanced payment routing.

Use the API to get a list of gateway groups, get a single gateway group by ID, create a gateway group, modify a gateway group, add a user gateway to a gateway group and remove a user gateway from a gateway group.


Get Gateway Groups

Returns a list of gateway groups. A gateway group is a collection of gateways used for advanced filtering when processing payments.

API Permission: gateway_group:retrieve

get

/gateway_groups

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/gateway_groups
Response200

Create A Gateway Group

Create a gateway_group prior to any purchase attempts. Useful when wanting to create prospects. Note: RevCent will automatically create a gateway_group during an initial sale if the gateway_group does not exist.

API Permission: gateway_group:create

post

/gateway_groups

Request Body


View Properties
post/gateway_groups
Response200

Get A Gateway Group

Retrieve the details of a specific gateway group. A gateway group is a collection of gateways used for advanced filtering when processing payments.

API Permission: gateway_group:retrieve

get

/gateway_groups/{gateway_group_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/gateway_groups/{gateway_group_id}
Response200

Edit A Gateway Group

Edit a specific gateway group using the gateway_group ID.

API Permission: gateway_group:edit

post

/gateway_groups/{gateway_group_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/gateway_groups/{gateway_group_id}
Response200

Add Gateway To Group

Add one or more user gateways to a specific gateway group using the gateway group ID.

API Permission: gateway_group:add_user_gateway

post

/gateway_groups/{gateway_group_id}/add_user_gateway

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/gateway_groups/{gateway_group_id}/add_user_gateway
Response200

Remove Gateway From Group

Remove one or more user gateways from a specific gateway group using the gateway group ID.

API Permission: gateway_group:remove_user_gateway

post

/gateway_groups/{gateway_group_id}/remove_user_gateway

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/gateway_groups/{gateway_group_id}/remove_user_gateway
Response200

Invoices

An invoice is created directly using the API or within the web app.

Use the API to get a list of invoices created during a specified date range, get a single invoice by ID, create an invoice and get invoices specific to a customer.


Get Invoices

Returns a list of invoices previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetInvoices
API Permission: invoice:retrieve

get

/invoices

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/invoices
Response200

Create An Invoice

Create an invoice.

API Permission: invoice:create

post

/invoices

Request Body


View Properties
post/invoices
Response200

Get An Invoice

Retrieve the details of a specific invoice.

Schema: GetInvoice
API Permission: invoice:retrieve

get

/invoices/{invoice_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/invoices/{invoice_id}
Response200

Key Values

A Key Value is a unique key with a value associated with it. It is meant as a way to access saved values by key throughout your RevCent account.

Use the API to get a list of key values, get a single key value, create a key value, edit a key value and delete a key value.


Get Key Values

Returns a list of system wide key values. Get the value of an individual key using the GetKeyValue operation.

Schema: GetKeyValues
API Permission: key_value:retrieve

get

/key_values

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/key_values
Response200

Create A Key Value

Create a system wide key value available for use.

API Permission: key_value:create

post

/key_values

Request Body


View Properties
post/key_values
Response200

Get A Key Value

Retrieve the details of a specific key value using the key.

Schema: GetKeyValue
API Permission: key_value:retrieve

get

/key_values/{key}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/key_values/{key}
Response200

Edit A Key Value

Edit a specific system wide key value using the key.

Schema: EditKeyValue
API Permission: key_value:edit

post

/key_values/{key}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/key_values/{key}
Response200

Delete A Key Value

Delete a key value using the key.

API Permission: key_value:delete

post

/key_values/{key}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/key_values/{key}/delete
Response200

Metadata

Metadata is used to store name value pairs that can be used for reporting, filtering and more. Metadata names and associated values are stored when Revcent receives a transaction with metadata included in the payload or when RevCent tracking URL parameters are detected and saved for a tracking visitor.

Use the API to get all saved metadata, get a metadata entry with saved values and insert metadata directly to an item.


Get Metadata

Returns a list of metadata saved. Values saved for each metadata name will not be returned when retrieving a list of metadata names. To retrieve the values for a metadata name, use the GetMetadataEntry operation.

Schema: GetMetadata
API Permission: metadata:retrieve

get

/metadata

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/metadata
Response200

Insert Metadata

Insert one or more metadata entries to a specific item, using an item type and item ID.

API Permission: metadata:insert

post

/metadata

Request Body


View Properties
post/metadata
Response200

Get A Metadata Entry

Retrieve the details of a specific metadata entry. Values saved for the metadata name will be returned. A maximum of 500 metadata values will be returned.

API Permission: metadata:retrieve

get

/metadata/{metadata_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/metadata/{metadata_id}
Response200

Notes

A note is created using the API or within the web app. A note is always attached to a specific item and is viewable via the web app or API. Use the API to create a note specific to an item.


Create A Note

Create a note for a specific item, using an item type and item ID.

Creating a note will simultaneously attach the note to the customer related to the specific item, allowing you to view all notes for a customer and related entities.

Schema: CreateNote
API Permission: note:create

post

/notes

Request Body


View Properties
post/notes
Response200

Offline Payments

An offline payment is created during a sale with a offline_payment payment type.

Use the API to get a list of offline payments created during a specified date range, get a single offline payment by ID and get offline payments specific to a customer.

Note: If you wish to refund an offline payment you instead refund the entity that the offline payment is associated using either the VoidSale, RefundProductSale, RefundTax or RefundShipment operations.


Get Offline Payments

Returns a list of offline payments previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: offline_payment:retrieve

get

/offline_payments

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/offline_payments
Response200

Get An Offline Payment

Retrieve the details of a specific offline payment.

API Permission: offline_payment:retrieve

get

/offline_payments/{offline_payment_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/offline_payments/{offline_payment_id}
Response200

Payment Profiles

A payment profile is a core component of the RevCent platform. A payment profile is used when creating a credit card sale, and determines the routing of credit card payments to specific processors according to rules, conditions and design.

Use the API to get a list of payment profiles, get a single payment profile by ID, create a new payment profile or modify a payment profile.


Get Payment Profiles

Returns a list of payment profiles created with your account. To retrieve the payment_flow use the GetPaymentProfile method and provide the payment profile ID.

API Permission: payment_profile:retrieve

get

/payment_profiles

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/payment_profiles
Response200

Create A Payment Profile

Create a Payment Profile, which will issue a unique Payment Profile ID.

API Permission: payment_profile:create

post

/payment_profiles

Request Body


View Properties
post/payment_profiles
Response200

Get A Payment Profile

Retrieve the details of a specific payment profile.

API Permission: payment_profile:retrieve

get

/payment_profiles/{payment_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/payment_profiles/{payment_profile_id}
Response200

Edit A Payment Profile

Edit a previously created Payment Profile using the Payment Profile ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the Payment Profile, then only include the name property in the request body.

API Permission: payment_profile:edit

post

/payment_profiles/{payment_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/payment_profiles/{payment_profile_id}
Response200

PayPal Accounts

A PayPal account is created when a user links their PayPal account to RevCent.

Use the API to get a list of PayPal accounts, get a single PayPal account by ID, create a new PayPal account, modify a PayPal account and delete a PayPal account.


Get PayPal Accounts

Returns a list of PayPal Accounts previously created.

The page and limit URL parameters are required.

API Permission: paypal_account:retrieve

get

/paypal_accounts

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/paypal_accounts
Response200

Create A PayPal Account

Create a PayPal Account, which will issue a unique PayPal Account ID.

API Permission: paypal_account:create

post

/paypal_accounts

Request Body


View Properties
post/paypal_accounts
Response200

Get A PayPal Account

Retrieve the details of a specific PayPal Account.

API Permission: paypal_account:retrieve

get

/paypal_accounts/{paypal_account_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/paypal_accounts/{paypal_account_id}
Response200

Edit A PayPal Account

Edit a previously created PayPal Account using the PayPal Account ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the PayPal Account, then only include the name property in the request body.

API Permission: paypal_account:edit

post

/paypal_accounts/{paypal_account_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/paypal_accounts/{paypal_account_id}
Response200

Delete A PayPal Account

Delete a specific PayPal account using the PayPal account ID and delete path.

API Permission: paypal_account:delete

post

/paypal_accounts/{paypal_account_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/paypal_accounts/{paypal_account_id}/delete
Response200

PayPal Disputes

A PayPal dispute is created when a customer disputes a PayPal transaction. RevCent automatically monitors PayPal accounts for new disputes and dispute updates directly from PayPal.

Use the API to get a list of PayPal disputes created during a specified date range, get a single PayPal dispute by ID and get PayPal disputes specific to a customer.


Get PayPal Disputes

Returns a list of PayPal disputes previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: paypal_dispute:retrieve

get

/paypal_disputes

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/paypal_disputes
Response200

Get A PayPal Dispute

Retrieve the details of a specific PayPal dispute.

API Permission: paypal_dispute:retrieve

get

/paypal_disputes/{paypal_dispute_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/paypal_disputes/{paypal_dispute_id}
Response200

PayPal Transactions

A PayPal transaction is created during a sale with a PayPal payment type.

Use the API to get a list of PayPal transactions created during a specified date range, get a single PayPal transaction by ID and get PayPal transactions specific to a customer.

Note: If you wish to refund a PayPal transaction you instead refund the entity that the PayPal transaction is associated using either the VoidSale, RefundProductSale, RefundTax or RefundShipment operations.


Get PayPal Transactions

Returns a list of PayPal transactions previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: paypal_transaction:retrieve

get

/paypal_transactions

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/paypal_transactions
Response200

Get A PayPal Transaction

Retrieve the details of a specific PayPal transaction.

API Permission: paypal_transaction:retrieve

get

/paypal_transactions/{paypal_transaction_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/paypal_transactions/{paypal_transaction_id}
Response200

Search PayPal Transactions

Search previously created PayPal transactions using a search term.

Useful for finding a PayPal transaction when you do not know the PayPal transaction ID and wish to retrieve the details of a specific PayPal transaction. Once a PayPal transaction has been found, use an individual search results' id property and the GetPayPalTransaction operation to retrieve the PayPal transaction details.

Important: If using the SearchPayPalTransactions and GetPayPalTransaction method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the PayPal transaction using a secondary non-provided value, such as the customer email in the GetPayPalTransaction response, before providing information or taking action.

API Permission: paypal_transaction:search

get

/paypal_transactions/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/paypal_transactions/search
Response200

Pending Refunds

A pending refund is created when a credit card transaction, PayPal transaction, check or offline payment is refunded directly or when an entity associated with either is refunded. You do not create a pending refund directly, you instead refund an entity which then creates a pending refund. RevCent will automatically complete a pending refund with the payment processor as soon as the processor allows.

Use the API to get a list of pending refunds created during a specified date range, get a single pending refund by ID and get pending refunds specific to a customer.


Get Pending Refunds

Returns a list of pending refunds previously created.

All credit card transactions, paypal transactions, checks and offline payments create a pending refund when refunded. RevCent automatically processes a pending refund once a credit card transaction has settled with the merchant gateway.

API Permission: pending_refund:retrieve

get

/pending_refunds

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/pending_refunds
Response200

Get A Pending Refund

Retrieve the details of a pending refund using the pending refund ID.

All credit card transactions, paypal transactions, checks and offline payments create a pending refund when refunded. RevCent automatically processes a pending refund once a credit card transaction has settled with the merchant gateway.

API Permission: pending_refund:retrieve

get

/pending_refunds/{pending_refund_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/pending_refunds/{pending_refund_id}
Response200

Search Pending Refunds

Search previously created pending refunds using a search term.

Useful for finding a pending refund when you do not know the pending refund ID and wish to retrieve the details of a specific pending refund. Once a pending refund has been found, use an individual search results' id property and the GetPendingRefund operation to retrieve the pending refund details.

Important: If using the SearchPendingRefunds and GetPendingRefund method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the pending refund using a secondary non-provided value, such as the customer email in the GetPendingRefund response, before providing information or taking action.

API Permission: pending_refund:search

get

/pending_refunds/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/pending_refunds/search
Response200

Products

A product is a line item which is purchased during a sale, and every sale must have at least one product. Products can create subscriptions, trials or be unbundled at time of sale or fulfillment.

Use the API to get a list of products created during a specified date range, get a single product by ID, create a new product, modify a product and search for products.


Get Products

Returns a list of products previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetProducts
API Permission: product:retrieve

get

/products

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/products
Response200

Create A Product

Create a product.

API Permission: product:create

post

/products

Request Body


View Properties
post/products
Response200

Get A Product

Retrieve the details of a specific product.

Schema: GetProduct
API Permission: product:retrieve

get

/products/{product_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/products/{product_id}
Response200

Edit A Product

Edit the details of a specific product using the product ID.

Schema: EditProduct
API Permission: product:edit

post

/products/{product_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/products/{product_id}
Response200

Enable A Product

Enable a currently disabled product.

API Permission: product:enable

post

/products/{product_id}/enable

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/products/{product_id}/enable
Response200

Disable A Product

Disable a currently enabled product.

API Permission: product:disable

post

/products/{product_id}/disable

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/products/{product_id}/disable
Response200

Delete A Product

Delete an existing product.

API Permission: product:delete

post

/products/{product_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/products/{product_id}/delete
Response200

Search Products

Search previously created products using a search term.

Useful for finding a product when you do not know the product ID and wish to retrieve the details of a specific product. Once a product has been found, use an individual search results' id property and the GetProduct operation to retrieve the sale details.

Note: If you have multiple stores with the same products it is important to differentiate found products using the store property. I.e. if searching by SKU or name you may receive multiple results as each store has the same details.

API Permission: product:search

get

/products/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/products/search
Response200

Sync Products

Sync products from a remote WooCommerce shop. RevCent will retrieve all products from the specified WooCommerce shop and do the following:
1. Create products which do not exist in RevCent
2. Update products that already exist in RevCent which have been modified in the shop but changes have not been updated in RevCent.

This operation creates an internal sync job for a shop, which until completed prevents other sync operations from being initiated for the same shop. Read properties to understand what will be conducted for products being created versus updated.

Note: Users have the ability to manually sync products using the product import tool within the RevCent web app at https://revcent.com/user/import-products instead of using this bulk operation. Manual importing is best suited when using a CSV file, certain remote products need attention, or the user needs to make specific adjustments.

Schema: SyncProducts
API Permission: product:sync

post

/products/sync

Request Body


View Properties
post/products/sync
Response200

Get Product Sync

Retrieve the details of a specific product sync using the product_sync_id from a SyncProducts operation response.

API Permission: product:retrieve

get

/products/sync/{product_sync_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/products/sync/{product_sync_id}
Response200

Product Groups

A product group is a collection of products that are grouped together for organizational purposes. Great for use in filtering, reporting and mroe.

Use the API to get a list of product groups, get a single product group by ID, create a new product group, modify a product group and delete a product group.


Get Product Groups

Returns a list of product groups previously created.

Useful for retrieving product groups to get their IDs, which can then be used when creating or editing a product to assign that product to a specific group. This operation does not return the list of products within each group. Use the GetProductGroup operation to retrieve the details of a specific product group including the products within that group.

API Permission: product_group:retrieve

get

/product_groups

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/product_groups
Response200

Create A Product Group

Create a Product Group, which will issue a unique Product Group ID.

Note: When creating a product group, if providing the 'products' array, any product ID's contained in the 'products' array will automatically be associated with the group.

API Permission: product_group:create

post

/product_groups

Request Body


View Properties
post/product_groups
Response200

Get A Product Group

Retrieve the details of a specific product group.

API Permission: product_group:retrieve

get

/product_groups/{product_group_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/product_groups/{product_group_id}
Response200

Edit A Product Group

Edit a previously created Product Group using the Product Group ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the Product Group, then only include the name property in the request body.

Important: If the 'products' array is provided, the products you provide in the 'products' array will automatically be associated with the group, and any products not included in the array will be disassociated if previously in the group. Only provide the 'products' array if it contains the ID's of all products you want in the group. If the 'products'array is provided and is empty, all associated products will be disassociated from the group.

API Permission: product_group:edit

post

/product_groups/{product_group_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/product_groups/{product_group_id}
Response200

Delete A Product Group

Delete a specific product group using the product group ID and delete path.

Any product(s) associated with the product group will be disassociated from the group.

API Permission: product_group:delete

post

/product_groups/{product_group_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/product_groups/{product_group_id}/delete
Response200

Products Sold

A product sale is the line item purchase of a specific product within an individual sale, i.e. a line item within a sale. The product sale entity allows advanced metrics on a product specific level.

Use the API to get a list of product sales created during a specified date range, get a single product sale by ID, refund a product sale and get product sales specific to a customer.


Get Product Sales

Returns a list of product sales previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: product_sale:retrieve

get

/product_sales

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/product_sales
Response200

Get A Product Sale

Retrieve the details of a specific product sale.

API Permission: product_sale:retrieve

get

/product_sales/{product_sale_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/product_sales/{product_sale_id}
Response200

Refund A Product Sale

Refund a product sale using the product sale ID. If partially refunding, provide the amount property in the request body. If the amount property is not provided, the product sale will be refunded entirely.

API Permission: product_sale:refund

post

/product_sales/{product_sale_id}/refund

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/product_sales/{product_sale_id}/refund
Response200

Projects

A Project can represent a business, an objective, an operational initiative, a reporting workspace, an external-agent source of truth, or any durable AI/MCP context container that should be reused over time.

Projects are useful for AI because they prevent every future interaction from needing all historical context in the prompt.


Get Projects

Returns a list of projects with names and descriptions. If you want to know the associated entities for a project use the GetProject operation with the project ID.

Schema: GetProjects
API Permission: project:retrieve

get

/projects

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/projects
Response200

Create A Project

Create a project in RevCent.

API Permission: project:create

post

/projects

Request Body


View Properties
post/projects
Response200

Get A Project

Retrieve the details of a specific project. Will return the project name and description, as well as the associated entities with that project such as product groups, products, and other details.

Schema: GetProject
API Permission: project:retrieve

get

/projects/{project_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/projects/{project_id}
Response200

Edit A Project

Edit a specific project using the project ID. Only provide the fields that you want to edit in the request body. For example, if you only want to edit the project's name, only include the name field in the request body.

Schema: EditProject
API Permission: project:edit

post

/projects/{project_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/projects/{project_id}
Response200

Delete A Project

Delete an existing project.

API Permission: project:delete

post

/projects/{project_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/projects/{project_id}/delete
Response200

Associate Entity with Project

Associate an existing entity with a project.

API Permission: project:associate_entity

post

/projects/{project_id}/associate_entity

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/projects/{project_id}/associate_entity
Response200

Disassociate Entity with Project

Disassociate an existing entity from a project.

API Permission: project:disassociate_entity

post

/projects/{project_id}/disassociate_entity

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/projects/{project_id}/disassociate_entity
Response200

Search Projects

Search previously created projects using a search term or associated entity ID.

Useful for finding a project(s) by name or description when you do not know the project ID. Also useful to search for projects with a specific entity associated using an entity type ID.

API Permission: projects:search

get

/projects/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/projects/search
Response200

Get Project Notes

Returns a list of project notes. Use the project filter to limit notes returned to only those related to a specific project.

When retrieving a list of project notes, only the title of the note is returned, not the content. The content of each note is not provided as it can be large. Use the GetProjectNote operation to retrieve the content of a specific project note.

API Permission: project_note:retrieve

get

/project_notes

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/project_notes
Response200

Create A Project Note

Create a project note in RevCent.

API Permission: project_note:create

post

/project_notes

Request Body


View Properties
post/project_notes
Response200

Get A Project Note

Retrieve the details of a specific project note, including its content.

API Permission: project_note:retrieve

get

/project_notes/{project_note_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/project_notes/{project_note_id}
Response200

Edit A Project Note

Edit a specific project note using the project note ID. Only provide the fields that you want to edit in the request body. For example, if you only want to edit the project note's content, only include the content field in the request body.

API Permission: project_note:edit

post

/project_notes/{project_note_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/project_notes/{project_note_id}
Response200

Delete A Project Note

Delete an existing project note.

API Permission: project_note:delete

post

/project_notes/{project_note_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/project_notes/{project_note_id}/delete
Response200

Search Project Notes

Search previously created project notes using a search term.

Useful for finding a project note(s) when you do not know the project note ID or wish to search for project notes by title, content and/or metadata.

API Permission: project_notes:search

get

/project_notes/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/project_notes/search
Response200

Sales

A sale is created using the web app, API, plugin or hosted solution. A sale consists of product sales, shipments, tax and discounts. Every sale has a specific customer and is the spawning point for subscriptions and trials.

Use the API to get a list of sales created during a specified date range, get a single sale by ID, create a sale, void a sale, get sales specific to a customer and search all sales.


Get Sales

Returns a list of sales previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetSales
API Permission: sale:retrieve

get

/sales

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/sales
Response200

Create A Sale

Create a sale with payment.

Schema: CreateSale
API Permission: sale:create

post

/sales

Request Body


View Properties
post/sales
Response200

Get A Sale

Retrieve the details of a specific sale.

Schema: GetSale
API Permission: sale:retrieve

get

/sales/{sale_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/sales/{sale_id}
Response200

Void A Sale

Void a sale in its entirety which will either cancel a pending sale, or fully refund all associated payments on a non-pending sale. If the sale is paid, all product sales, shipping and tax will be refunded in their entirety.

Voiding a sale will also cancel any related subscriptions, active trials and shipping at fulfillment.

Note: If you wish to permanently block a specific customer associated with a sale you are voiding, we recommend you instead use the CreateFraudDetection operation and set source_id:{sale_id} and void_sale:true. This will fully refund the sale, prevent the same credit card from making a purchase and block the customer entirely.

Schema: VoidSale
API Permission: sale:void

post

/sales/{sale_id}/void

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/sales/{sale_id}/void
Response200

Add Fraud Alert

Add a fraud alert to an existing sale, allowing further review prior to creating a fraud detection.

API Permission: fraud_alert:add

post

/sales/{sale_id}/add_fraud_alert

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/sales/{sale_id}/add_fraud_alert
Response200

Remove Fraud Alert

Remove a fraud alert from an existing sale.

API Permission: fraud_alert:remove

post

/sales/{sale_id}/remove_fraud_alert

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/sales/{sale_id}/remove_fraud_alert
Response200

Create A Pending Sale

Allows the creation of a new pending sale, which will issue a unique sale ID for updating and processing the same pending sale. This will not process payment.

A pending sale allows you to have RevCent save a specific sale with a customer, including payment information, without immediately processing the payment.

The pending sale concept was built to facilitate multi-step and upsell flows, where information and products may be added or changed at different times prior to payment being processed.

You can update a pending sale as many times as you wish via the UpdatePendingSale operation, and process the payment when ready via the ProcessPendingSale operation.

API Permission: sale:create

post

/sales/pending

Request Body


View Properties
post/sales/pending
Response200

Update A Pending Sale

Update an existing pending sale using the sale ID of a previously created pending sale. This will not process payment.

You can add/modify all attributes such as payment details, addresses, products and more.

Important: If adding/modifying any products, shipping, tax or discounts, please refer to the pending_options object for specific update settings.

API Permission: sale:create

post

/sales/pending/{sale_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/sales/pending/{sale_id}
Response200

Process A Pending Sale

Process an existing pending sale using the sale ID of a previously created pending sale. This will process payment.

Use this endpoint when you are officially ready to process payment for the pending sale.

You can include payment information when processing if not already provided.

API Permission: sale:create

post

/sales/pending/{sale_id}/process

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/sales/pending/{sale_id}/process
Response200

Estimate A Sale

Estimate the total cost with itemized results including products, shipping, tax, coupons and discounts.

The request object is the same as the the sale create request object, except no payment is processed.

The response object contains detailed information that can be useful for displaying to a customer during checkout, including how much the customer will save due to discounts.

Schema: EstimateSale
API Permission: sale:estimate

post

/sales/estimate

Request Body


View Properties
post/sales/estimate
Response200

Search Sales

Search previously created sales using a search term.

Useful for finding a sale when you do not know the sale ID and wish to retrieve the details of a specific sale. Once a sale has been found, use an individual search results' id property and the GetSale operation to retrieve the sale details.

Important: If using the SearchSales and GetSale method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the sale using a secondary non-provided value, such as the customer email in the GetSale response, before providing information or taking action.

Schema: SearchSales
API Permission: sale:search

get

/sales/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/sales/search
Response200

Salvage Transactions

A salvage transaction is created when a credit card transaction is fully or partially declined.

Use the API to get a list of salvage transactions created during a specified date range, get a single salvage transaction by ID and get salvage transactions specific to a customer.


Get Salvage Transactions

Returns a list of salvage transactions previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: salvage_transaction:retrieve

get

/salvage_transactions

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/salvage_transactions
Response200

Get A Salvage Transaction

Retrieve the details of a specific salvage transaction.

API Permission: salvage_transaction:retrieve

get

/salvage_transactions/{salvage_transaction_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/salvage_transactions/{salvage_transaction_id}
Response200

Process A Salvage Transaction

Process an existing salvage transaction using the salvage transaction ID.

API Permission: salvage_transaction:process

post

/salvage_transactions/{salvage_transaction_id}/process

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/salvage_transactions/{salvage_transaction_id}/process
Response200

Secure Forms

Secure forms are a method to save sensitive data without passing via a request body where logs and AI conversations shouldn't contain sensitive information. A secure form is first created to provide a user a secure web page to enter sensitive credentials when creating a third party shop, third party integration, fulfillment center, gateway or smtp profile. Instead of passing credentials in a request, you instead create a secure form which generates a unique URL. Use the API to create a secure form for a specific item and get a secure form by ID.

How It Works:

1. A secure form is created, which returns a secure form ID and a form url.

2. The user visits the URL to complete the form in a secure environment.

3. Once the user has completed the secure form, RevCent encrypts and saves the form fields.

4. The secure form ID can then be used when creating entities, such as gateways, instead of providing raw sensitive data, i.e. use a secure form as a reference to already saved sensitive data.


Important: A secure form is temporary and has a lifespan of 1 hour, which upon expiration will be deleted including any saved data. After creating a secure form, the user should be aware that they have only one hour to complete the form. Attempts to access the form after its expiration will result in an error


Create A Secure Form

Create a Secure Form. This will generate a secure form ID in the response. The response will also contain a form_url which can be used to direct a user to the secure form URL in order to fill out sensitive fields, then save encrypted data in RevCent internally. After the user indicates that they completed the form, the form ID can be used to reference the form in subsequent operations.

This is a method to save sensitive data without passing via a request body where logs and AI conversations shouldn't contain sensitive information.

Important: A secure form is temporary and has a lifespan of 1 hour, which upon expiration will be deleted including any saved data. After creating a secure form, the user should be aware that they have only one hour to complete the form. Attempts to access the form after its expiration will result in an error.

API Permission: secure_form:create

post

/secure_forms

Request Body


View Properties
post/secure_forms
Response200

Get A Secure Form

Retrieve the details of a specific secure form.

API Permission: secure_form:retrieve

get

/secure_forms/{secure_form_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/secure_forms/{secure_form_id}
Response200

Sentinel Anti-Fraud

Sentinel Anti-Fraud is RevCent's in-house multi layered anti-fraud system which protects your account from processing fraudulent charges.

Built by RevCent after years of experience with ecommerce payments, Sentinel analyzes IP addresses, validates tracking visitors and utilizes third parties before processing payments.

Use the API to get account Sentinel settings, modify account Sentinel settings, get fraud detections by date range, get a fraud detection by ID, create a fraud detection and edit a fraud detection.


Get Fraud Detections

Returns a list of fraud detections previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: fraud_detection:retrieve

get

/fraud_detections

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/fraud_detections
Response200

Create A Fraud Detection

Create a single fraud detection using an existing source ID.

API Permission: fraud_detection:create

post

/fraud_detections

Request Body


View Properties
post/fraud_detections
Response200

Get A Fraud Detection

Retrieve the details of a specific fraud detection.

API Permission: fraud_detection:retrieve

get

/fraud_detections/{fraud_detection_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/fraud_detections/{fraud_detection_id}
Response200

Edit A Fraud Detection

Edit a specific fraud detection using the fraud detection ID.

API Permission: fraud_detection:edit

post

/fraud_detections/{fraud_detection_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/fraud_detections/{fraud_detection_id}
Response200

Search Fraud Detections

Search previously created fraud detections using a search term.

Useful for finding a fraud detection when you do not know the fraud detection ID and wish to retrieve the details of a specific fraud detection. Once a fraud detection has been found, use an individual search results' id property and the GetFraudDetection operation to retrieve the fraud detection details.

Important: If using the SearchFraudDetections and GetFraudDetection method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the fraud detection using a secondary non-provided value, such as the customer email in the GetFraudDetection response, before providing information or taking action.

API Permission: fraud_detection:search

get

/fraud_detections/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/fraud_detections/search
Response200

Get Sentinel Settings

Returns the current Sentinel settings for the RevCent account.

API Permission: sentinel:retrieve

get

/sentinel
get/sentinel
Response200

Edit Sentinel Settings

Edit the Sentinel settings for the RevCent account. All settings are optional and will only be updated if included in the request body. For example, if you only want to update the fraud firewall settings, you can include just the fraud firewall object in the request body and the tracking visitor validator settings will remain unchanged.

API Permission: sentinel:edit

post

/sentinel

Request Body


View Properties
post/sentinel
Response200

Shipping

A shipment is created during a sale, subscription renewal or trial expiration, when one or more products sold are associated with a fulfillment account.

Use the API to get a list of shipments created during a specified date range, get a single shipment by ID, refund a shipment, get shipments specific to a customer and search all shipments.


Get Shipments

Returns a list of shipments previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetShipments
API Permission: shipping:retrieve

get

/shipping

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/shipping
Response200

Get A Shipment

Retrieve the details of a specific shipment.

Schema: GetShipment
API Permission: shipping:retrieve

get

/shipping/{shipping_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/shipping/{shipping_id}
Response200

Edit A Shipment

Edit the details of a specific shipment using the shipment ID. Changes to the ship to address will be updated at fulfillment where applicable.

Schema: EditShipment
API Permission: shipping:edit

post

/shipping/{shipping_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/shipping/{shipping_id}
Response200

Refund A Shipment

Refund a shipment using the shipment ID. If partially refunding, provide the amount property in the request body. If the amount property is not provided, the shipment will be refunded entirely.

API Permission: shipping:refund

post

/shipping/{shipping_id}/refund

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/shipping/{shipping_id}/refund
Response200

Search Shipping

Search previously created shipments using a search term.

Useful for finding a shipment when you do not know the shipment ID and wish to retrieve the details of a specific shipment. Once a shipment has been found, use an individual search results' id property and the GetShipment operation to retrieve the shipment details.

Important: If using the SearchShipping and GetShipment method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the shipment using a secondary non-provided value, such as the customer email in the GetShipment response, before providing information or taking action.

API Permission: shipping:search

get

/shipping/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/shipping/search
Response200

Shipping Profiles

A shipping profile is created to define the settings for calculating shipping rates on sales, trial expirations and subscription renewals that have shippable products.

RevCent will analyze all enabled shipping profiles and find the best match for a shipping rate based on number of matched qualifiers. This is necessary for trial expirations and subscription renewals which have shippable products. Sales with a predefined shipping entry in the API request, i.e. shipping calculated at a third party shop, will use that entry instead of calculating a new rate.

Use the API to get a list of shipping profiles, get a single shipping profile by ID, create a new shipping profile, update an existing shipping profile, and delete a shipping profile.


Get Shipping Profiles

Returns a list of Shipping Profiles previously created.

The page and limit URL parameters are required.

API Permission: shipping_profile:retrieve

get

/shipping_profiles

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/shipping_profiles
Response200

Create A Shipping Profile

Create a shipping profile in RevCent.

API Permission: shipping_profile:create

post

/shipping_profiles

Request Body


View Properties
post/shipping_profiles
Response200

Get A Shipping Profile

Retrieve the details of a specific Shipping Profile.

API Permission: shipping_profile:retrieve

get

/shipping_profiles/{shipping_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/shipping_profiles/{shipping_profile_id}
Response200

Edit A Shipping Profile

Edit a specific shipping profile using the shipping_profile ID. Only provide the fields that you want to edit in the request body. For example, if you only want to edit the shipping profile's name, only include the name field in the request body.

API Permission: shipping_profile:edit

post

/shipping_profiles/{shipping_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/shipping_profiles/{shipping_profile_id}
Response200

Delete A Shipping Profile

Delete an existing shipping profile.

API Permission: shipping_profile:delete

post

/shipping_profiles/{shipping_profile_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/shipping_profiles/{shipping_profile_id}/delete
Response200

Shipping Providers

A site shipping provider is the actual carrier, such as USPS or FedEx, stored in RevCent using individual ID's along with respective shipping methods and ID's. Site shipping providers and their methods are used to calculate shipping rates within shipping profiles.

Use the API to get a list of site shipping providers or get a single site shipping provider by ID with provider methods.


Get Site Shipping Providers

Returns a list of site shipping providers. Does not include individual provider delivery options. To see a provider's domestic and international delivery options, retrieve the details of a specific provider using the GetSiteShippingProvider operation.

API Permission: site_shipping_provider:retrieve

get

/site_shipping_providers
get/site_shipping_providers
Response200

Get A Site Shipping Provider

Retrieve the details of a specific site shipping provider. When retrieving details of a shipping provider, the providers' domestic and international delivery options are included.

API Permission: site_shipping_provider:retrieve

get

/site_shipping_providers/{site_shipping_provider_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/site_shipping_providers/{site_shipping_provider_id}
Response200

Shops

There are two different shop entities in RevCent: the site shop and the user shop. A site shop is the third party shopping cart software, such as WooCommerce, with a global ID, not associated with a specific user, that is powering your online ecommerce store. You create a user shop based on a site shop. The user shop is an individual shop with a unique URL, created using the web app or API and associated with a site shop.

Use the API to get a list of site shops, get a single site shop by ID, get a list of user shops, get a single user shop by ID, create a user shop, edit a user shop and validate or fix user shop remote settings.


Get Site Shops

Returns a list of site shops. Useful for creating a user shop, including required fields.

Schema: GetSiteShops
API Permission: site_shop:retrieve

get

/site_shops
get/site_shops
Response200

Get A Site Shop

Retrieve the details of a specific site shop. The most important part is the fields array, which is what each shop requires for authentication. When creating or editing a user shop associated with the site shop, the fields array must be used to determine what fields are required and their descriptions.

Schema: GetSiteShop
API Permission: site_shop:retrieve

get

/site_shops/{site_shop_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/site_shops/{site_shop_id}
Response200

Get User Shops

Returns a list of user shops.

Schema: GetUserShops
API Permission: user_shop:retrieve

get

/user_shops

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/user_shops
Response200

Create A User Shop

Create a user shop in RevCent which will link and integrate existing stores such as WooCommerce to RevCent.

A site shop is required, along with the correct required fields when creating a user shop. You must have previously installed the appropriate RevCent plugin before creating a user shop as well as acquired the necessary credentials. For example, if the site shop is WooCommerce, they must have already installed the RevCent Payment plugin in WordPress and have created an API key/secret.
After creating the user shop, run the ValidateUserShop operation to ensure all remote settings are configured correctly, and if not configured correctly you can run the FixUserShop operation to have Revcent automatically configure settings correctly.
Once you have validated the user shop using the ValidateUserShop operation and potentially fixed the user shop using the FixUserShop operation, it is important to use the GetUserShop operation with remote_data query string parameters of 'shipping_methods' and 'offline_payment_methods', then edit the user shop with appropriately mapped values for the items in both methods.
Once you have set the shipping_methods and offline_payment_methods, use the GetUserShop operation to retrieve the remote_data products, which can then be used to create each product in RevCent associated with the user shop with the RevCent third_party_shop ID and the shops' product ID.

API Permission: user_shop:create

post

/user_shops

Request Body


View Properties
post/user_shops
Response200

Get A User Shop

Retrieve the details of a specific user shop.

Schema: GetUserShop
API Permission: user_shop:retrieve

get

/user_shops/{user_shop_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/user_shops/{user_shop_id}
Response200

Edit A User Shop

Edit a user shop in RevCent. Only provide the properties you wish to modify. Properties not provided will remain unchanged.

Schema: EditUserShop
API Permission: user_shop:edit

post

/user_shops/{user_shop_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/user_shops/{user_shop_id}
Response200

Validate A User Shop

Validate an existing user shop within RevCent via the user shop validate method. RevCent will connect to your shop and check the RevCent Payments plugin settings. Any RevCent Payments plugin issues will be returned as an error.

API Permission: user_shop:validate

post

/user_shops/{user_shop_id}/validate

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/user_shops/{user_shop_id}/validate
Response200

Fix A User Shop

Fix an existing user shop within RevCent via the user shop fix method. RevCent will connect to your shop, check the RevCent Payments plugin settings and attempt to fix any issues. Any remaining issues that could not be fixed will be returned as an error. This method is only intended to fix the required settings for the RevCent Payments plugin, not issues unrelated to RevCent. I.e. this will not fix other plugin issues or store code.

Schema: FixUserShop
API Permission: user_shop:fix

post

/user_shops/{user_shop_id}/fix

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/user_shops/{user_shop_id}/fix
Response200

SMTP Messages

A SMTP message is created automatically based on internal system triggers or via API.

Use the API to get a list of SMTP messages, get a single SMTP message or send a SMTP message.


Get SMTP Messages

Returns a list of SMTP Messages previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 7 day period.

API Permission: smtp_message:retrieve

get

/smtp_messages

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/smtp_messages
Response200

Send A SMTP Message

Send an SMTP message using an Email Template ID and optional custom arguments determined by the Email Template used.

API Permission: smtp_message:send

post

/smtp_messages

Request Body


View Properties
post/smtp_messages
Response200

Get A SMTP Message

Retrieve the details of a specific SMTP Message.

API Permission: smtp_message:retrieve

get

/smtp_messages/{smtp_message_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/smtp_messages/{smtp_message_id}
Response200

SMTP Profiles

A SMTP profile is created to define the settings for sending SMTP messages.

Use the API to get a list of SMTP profiles, get a single SMTP profile by ID, create a new SMTP profile, update an existing SMTP profile, and delete an SMTP profile.


Get SMTP Profiles

Returns a list of SMTP profiles.

API Permission: smtp_profile:retrieve

get

/smtp_profiles

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/smtp_profiles
Response200

Create A SMTP Profile

Create a SMTP profile in RevCent.

API Permission: smtp_profile:create

post

/smtp_profiles

Request Body


View Properties
post/smtp_profiles
Response200

Get A SMTP Profile

Retrieve the details of a specific SMTP profile.

API Permission: smtp_profile:retrieve

get

/smtp_profiles/{smtp_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/smtp_profiles/{smtp_profile_id}
Response200

Edit A SMTP Profile

Edit a specific SMTP profile using the smtp_profile ID. Only provide the fields that you want to edit in the request body. For example, if you only want to edit the SMTP profile's name, only include the name field in the request body.

API Permission: smtp_profile:edit

post

/smtp_profiles/{smtp_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/smtp_profiles/{smtp_profile_id}
Response200

Delete A SMTP Profile

Delete an existing SMTP profile.

API Permission: smtp_profile:delete

post

/smtp_profiles/{smtp_profile_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/smtp_profiles/{smtp_profile_id}/delete
Response200

Subscriptions

A subscription is created during a sale in which a product with an attached subscription profile is sold. Subscriptions are their own entity and are automatically renewed by RevCent according to the subscription profile.

Use the API to get a list of subscriptions created during a specified date range, get a single subscription by ID, activate a subscription, suspend a subscription, cancel a subscription, renew a subscription and get subscriptions specific to a customer.


Get Subscriptions

Returns a list of subscriptions previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: subscription:retrieve

get

/subscriptions

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/subscriptions
Response200

Get A Subscription

Retrieve the details of a specific subscription.

API Permission: subscription:retrieve

get

/subscriptions/{subscription_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/subscriptions/{subscription_id}
Response200

Edit A Subscription

Edit a subscription using the subscription ID. This operation is meant for modifying attributes of a subscription, and not the active status of a subscription. Use the web app to modify the product and customize a specific subscriptions' renewal period.

API Permission: subscription:edit

post

/subscriptions/{subscription_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/subscriptions/{subscription_id}
Response200

Activate A Subscription

Activate a currently suspended subscription using the subscription ID.

API Permission: subscription:activate

post

/subscriptions/{subscription_id}/activate

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/subscriptions/{subscription_id}/activate
Response200

Suspend A Subscription

Suspend a subscription using the subscription ID. You can restart a suspended subscription using the SubscriptionActivate operation.

API Permission: subscription:suspend

post

/subscriptions/{subscription_id}/suspend

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/subscriptions/{subscription_id}/suspend
Response200

Cancel A Subscription

Cancel a subscription using the subscription ID. This operation is permanent and cannot be undone. Use the SubscriptionSuspend operation if you wish to restart the subscription at a later date.

API Permission: subscription:cancel

post

/subscriptions/{subscription_id}/cancel

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/subscriptions/{subscription_id}/cancel
Response200

Renew A Subscription

Renew a subscription manually using the subscription ID. RevCent automatically processes renewals on your behalf.

Note: Only use this method if you want to charge the customer immediately. Manually renewing a subscription will set the next renewal date according to the subscription profile duration setting in combination with the date of the manual renewal.

API Permission: subscription:renew

post

/subscriptions/{subscription_id}/renew

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/subscriptions/{subscription_id}/renew
Response200

Search Subscriptions

Search previously created subscriptions using a search term.

Useful for finding a subscription when you do not know the subscription ID and wish to retrieve the details of a specific subscription. Once a subscription has been found, use an individual search results' id property and the GetSubscription operation to retrieve the subscription details.

Important: If using the SearchSubscriptions and GetSubscription method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the subscription using a secondary non-provided value, such as the customer ZIP code in the GetSubscription response, before providing information or taking action.

API Permission: subscription:search

get

/subscriptions/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/subscriptions/search
Response200

Subscription Profiles

A subscription profile is created to define the settings for managing subscriptions.

Use the API to get a list of subscription profiles, get a single subscription profile by ID, create a new subscription profile, update an existing subscription profile, and delete a subscription profile.


Get Subscription Profiles

Returns a list of subscription profiles.

API Permission: subscription_profile:retrieve

get

/subscription_profiles

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/subscription_profiles
Response200

Create A Subscription Profile

Create a Subscription Profile, which will issue a unique Subscription Profile ID.

API Permission: subscription_profile:create

post

/subscription_profiles

Request Body


View Properties
post/subscription_profiles
Response200

Get A Subscription Profile

Retrieve the details of a specific subscription profile.

API Permission: subscription_profile:retrieve

get

/subscription_profiles/{subscription_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/subscription_profiles/{subscription_profile_id}
Response200

Edit A Subscription Profile

Edit a previously created subscription profile using the subscription profile ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the subscription profile, then only include the name property in the request body.

Important: Modifying a subscription profiles' billing frequency will affect all subscriptions using this profile. Make sure to understand the billing frequency properties and how they work together before modifying the billing frequency of a subscription profile.

API Permission: subscription_profile:edit

post

/subscription_profiles/{subscription_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/subscription_profiles/{subscription_profile_id}
Response200

Delete A Subscription Profile

Delete a specific subscription profile using the subscription profile ID and delete path.

Note: An error will return if any subscriptions or products are associated with the profile. This is to ensure subscriptions renew and products purchased are not affected.

API Permission: subscription_profile:delete

post

/subscription_profiles/{subscription_profile_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/subscription_profiles/{subscription_profile_id}/delete
Response200

Subscription Renewals

A subscription renewal is created when a subscription is renewed either manually or automatically by RevCent.

Use the API to get a list of subscription renewals created during a specified date range, get a single subscription renewal by ID, refund a subscription renewal and get subscription renewals specific to a customer.


Get Subscription Renewals

Returns a list of subscription_renewals previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: subscription_renewal:retrieve

get

/subscription_renewals

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/subscription_renewals
Response200

Get A Subscription Renewal

Retrieve the details of a specific subscription renewal.

API Permission: subscription_renewal:retrieve

get

/subscription_renewals/{subscription_renewal_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/subscription_renewals/{subscription_renewal_id}
Response200

Refund A Subscription Renewal

Refund a subscription renewal using the subscription renewal ID. If partially refunding, provide the amount property in the request body. If the amount property is not provided, the subscription renewal will be refunded entirely.

API Permission: subscription_renewal:refund

post

/subscription_renewals/{subscription_renewal_id}/refund

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/subscription_renewals/{subscription_renewal_id}/refund
Response200

Tax

A tax is created during a sale, subscription renewal or trial expiration when either a tax entry is provided or a tax profile is used to calculate tax.

Use the API to get a list of tax created during a specified date range, get a single tax by ID, refund a tax, get tax specific to a customer and retrieve, create, edit or delete tax profiles.


Get Taxes

Returns a list of tax previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetTaxes
API Permission: tax:retrieve

get

/tax

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/tax
Response200

Get A Tax

Retrieve the details of a specific tax.

Schema: GetTax
API Permission: tax:retrieve

get

/tax/{tax_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/tax/{tax_id}
Response200

Refund A Tax

Refund a tax using the tax ID. If partially refunding, provide the amount property in the request body. If the amount property is not provided, the tax will be refunded entirely.

Schema: RefundTax
API Permission: tax:refund

post

/tax/{tax_id}/refund

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/tax/{tax_id}/refund
Response200

Get Tax Profiles

Returns a list of tax profiles.

API Permission: tax_profile:retrieve

get

/tax_profiles

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/tax_profiles
Response200

Create A Tax Profile

Create a Tax Profile, which will issue a unique Tax Profile ID.

API Permission: tax_profile:create

post

/tax_profiles

Request Body


View Properties
post/tax_profiles
Response200

Edit A Tax Profile

Edit a previously created tax profile using the tax profile ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the tax profile, then only include the name property in the request body.

API Permission: tax_profile:edit

post

/tax_profiles/{tax_profile_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/tax_profiles/{tax_profile_id}
Response200

Delete A Tax Profile

Delete a specific tax profile using the tax profile ID and delete path.

API Permission: tax_profile:delete

post

/tax_profiles/{tax_profile_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/tax_profiles/{tax_profile_id}/delete
Response200

Third Party Integrations

A third party integration is created to define the settings for integrating RevCent with external services.

Use the API to get a list of third party integrations, get a single site or user third party integration by ID, create a new user third party integration, update an existing user third party integration, and delete a user third party integration.


Get Site Third Party Integrations

Returns a list of site third party integrations. Useful for creating a user integration, including required fields.

API Permission: site_third_party_integration:retrieve

get

/site_third_party_integrations
get/site_third_party_integrations
Response200

Get A Site Third Party Integration

Retrieve the details of a specific site third party integration. The most important part is the fields array, which is what each integration requires for authentication.

API Permission: site_third_party_integration:retrieve

get

/site_third_party_integrations/{site_third_party_integration_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/site_third_party_integrations/{site_third_party_integration_id}
Response200

Get User Third Party Integrations

Returns a list of user third party integrations.

API Permission: user_third_party_integration:retrieve

get

/user_third_party_integrations
get/user_third_party_integrations
Response200

Create A User Third Party Integration

Create a User Third Party Integration.

Important: After creating a user third party integration, you may need to edit the integration to provide any third_party_options that may be required. If a site third party integrations has third_party_options, you will need to retrieve the newly created integration using the GetUserThirdPartyIntegration operation to view options provided by the third party which are specific to a users' account with the third party. Review the site third party integration to see if there are any third_party_options, and if so, an edit is required via EditUserThirdPartyIntegration after the creation to include those options. If no site integration third_party_options are present there is no need to edit the user integration after creating it.

API Permission: user_third_party_integration:create

post

/user_third_party_integrations

Request Body


View Properties
post/user_third_party_integrations
Response200

Get A User Third Party Integration

Retrieve the details of a specific user third party integration.

API Permission: user_third_party_integration:retrieve

get

/user_third_party_integrations/{user_third_party_integration_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/user_third_party_integrations/{user_third_party_integration_id}
Response200

Edit A User Third Party Integration

Edit a previously created User Third Party Integration using the integration ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the integration, then only include the name property in the request body.

API Permission: user_third_party_integration:edit

post

/user_third_party_integrations/{user_third_party_integration_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/user_third_party_integrations/{user_third_party_integration_id}
Response200

Delete A User Third Party Integration

Delete a specific user third party integration using the integration ID and delete path.

API Permission: user_third_party_integration:delete

post

/user_third_party_integrations/{user_third_party_integration_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/user_third_party_integrations/{user_third_party_integration_id}/delete
Response200

Tracking

Utilize both tracking domains and URL parameter sets to monitor visitor activity with enhanced DNS first party cookies.

Use the API to get a list of tracking domains, get a single tracking domain by ID, create a tracking domain, modify a tracking domain, delete a tracking domain, get a list of URL parameter sets, get a single URL parameter set by ID, create a URL parameter set, modify a URL parameter set and delete a URL parameter set.


Get Tracking Domains

Returns a list of tracking domains.

API Permission: tracking_domain:retrieve

get

/tracking_domains

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/tracking_domains
Response200

Create A Tracking Domain

Create a Tracking Domain, which will issue a unique Tracking Domain ID.

After creating the tracking domain, the response will contain necessary A records in the 'a_records' array, which you will need to add to the domain's DNS. Once you have added the A records to your domain's DNS, you can begin the InitializeTrackingDomainSSL operation to initialize SSL for the domain. You can retrieve the required A records in the response when you first create the tracking domain, or you can use the GetTrackingDomain operation at any time to retrieve the A records.

Steps for DNS tracking:

1. Create a tracking domain using the CreateTrackingDomain operation.

2. Add the A records in the CreateTrackingDomain response to your domain's DNS settings.

3. Initialize SSL for the tracking domain using the InitializeTrackingDomainSSL operation.

4. Add the CNAME records in the InitializeTrackingDomainSSL response to your domain's DNS settings.

5. Complete the DNS tracking setup by performing the InitializeTrackingDomainDNS operation.

API Permission: tracking_domain:create

post

/tracking_domains

Request Body


View Properties
post/tracking_domains
Response200

Get A Tracking Domain

Retrieve the details of a specific tracking domain.

API Permission: tracking_domain:retrieve

get

/tracking_domains/{tracking_domain_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/tracking_domains/{tracking_domain_id}
Response200

Edit A Tracking Domain

Edit a previously created Tracking Domain using the Tracking Domain ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the Tracking Domain, then only include the name property in the request body.

API Permission: tracking_domain:edit

post

/tracking_domains/{tracking_domain_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/tracking_domains/{tracking_domain_id}
Response200

Initialize SSL for A Tracking Domain

Initialize SSL for a specific tracking domain using the tracking domain ID.

Instructions:

1. Before running this operation, make sure you have already added the A records to the domain DNS, supplied in the response when you first created the tracking domain. Use the GetTrackingDomain operation to retrieve the required A records if necessary.

2. If the A records have been added, perform the InitializeTrackingDomainSSL operation and wait for a successful response containing the CNAME records found in the responses' ssl.cname_records array to add to your domain's DNS.

3. After adding the CNAME records to your domain, proceed to the InitializeTrackingDomainDNS operation to complete the process.

API Permission: tracking_domain:initialize_ssl

post

/tracking_domains/{tracking_domain_id}/initialize_ssl

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/tracking_domains/{tracking_domain_id}/initialize_ssl
Response200

Initialize DNS for A Tracking Domain

Initialize DNS for a specific tracking domain using the tracking domain ID.

You must have first added the necessary A records when you created the domain. Then you must have initialized SSL for the domain by completing the InitializeTrackingDomainSSL operation, which will provide necessary CNAME records to add to your domain's DNS. After you have added the required A records and CNAME records to your domain's DNS, you can run this operation to complete the DNS initialization process for the tracking domain.

RevCent will verify that all necessary DNS records are present before completing the initialization process. If any DNS records are missing, RevCent will return an error. If all necessary DNS records are present, and the SSL certificate has been issued, RevCent will complete the initialization process and the tracking domain will be ready for use.

API Permission: tracking_domain:initialize_dns

post

/tracking_domains/{tracking_domain_id}/initialize_dns

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/tracking_domains/{tracking_domain_id}/initialize_dns
Response200

Get A Tracking Visitor

Retrieve the details of a specific tracking visitor.

API Permission: tracking_visitor:retrieve

get

/tracking_visitors/{tracking_visitor_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/tracking_visitors/{tracking_visitor_id}
Response200

Get URL Parameter Sets

Returns a list of URL parameter sets.

API Permission: url_parameter_set:retrieve

get

/url_parameter_sets

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/url_parameter_sets
Response200

Create A URL Parameter Set

Create a URL Parameter Set, which will issue a unique URL Parameter Set ID.

API Permission: url_parameter_set:create

post

/url_parameter_sets

Request Body


View Properties
post/url_parameter_sets
Response200

Get A URL Parameter Set

Retrieve the details of a specific URL parameter set.

API Permission: url_parameter_set:retrieve

get

/url_parameter_sets/{url_parameter_set_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/url_parameter_sets/{url_parameter_set_id}
Response200

Edit A URL Parameter Set

Edit a previously created URL Parameter Set using the URL Parameter Set ID. Only include the properties you wish to modify. For example, if you only want to modify the name of the URL Parameter Set, then only include the name property in the request body.

API Permission: url_parameter_set:edit

post

/url_parameter_sets/{url_parameter_set_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/url_parameter_sets/{url_parameter_set_id}
Response200

Delete A URL Parameter Set

Delete a specific URL parameter set using the URL parameter set ID and delete path.

Any Tracking Domains associated with the set will be disassociated from the set.

API Permission: url_parameter_set:delete

post

/url_parameter_sets/{url_parameter_set_id}/delete

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/url_parameter_sets/{url_parameter_set_id}/delete
Response200

Transactions

A credit card transaction is created during a sale with a credit_card payment type or when a pending refund is completed with a payment processor.

Use the API to get a list of transactions created during a specified date range, get a single transaction by ID, refund a transaction, get transactions specific to a customer and search all transactions.


Get Transactions

Returns a list of transactions previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

API Permission: transaction:retrieve

get

/transactions

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/transactions
Response200

Get A Transaction

Retrieve the details of a specific transaction.

API Permission: transaction:retrieve

get

/transactions/{transaction_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/transactions/{transaction_id}
Response200

Refund A Transaction

Refund a credit card transaction directly using the transaction ID. If partially refunding, provide the amount property in the request body. If the amount property is not provided, the transaction will be refunded entirely.



Note: This is not the recommended method and should be avoided if you wish to run detailed metrics reports on a per item type basis. Use the VoidSale, RefundProductSale, RefundShipment, RefundTax, or RefundSubscriptionRenewal operations in order to target the specific item in question.

API Permission: transaction:refund

post

/transactions/{transaction_id}/refund

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/transactions/{transaction_id}/refund
Response200

Search Transactions

Search previously created transactions using a search term.

Useful for finding a transaction when you do not know the transaction ID and wish to retrieve the details of a specific transaction. Once a transaction has been found, use an individual search results' id property and the GetTransaction operation to retrieve the transaction details.

Important: If using the SearchTransactions and GetTransaction method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the transaction using a secondary non-provided value, such as the customer email in the GetTransaction response, before providing information or taking action.

API Permission: transaction:search

get

/transactions/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/transactions/search
Response200

Trials

A trial is created during a sale in which a product with a trial period is sold. Trials are their own entity and are automatically expired with payment by RevCent on each trials' expiration date.

Use the API to get a list of trials created during a specified date range, get a single trial by ID, extend a trial, shorten a trial, cancel a trial, expire a trial and get trials specific to a customer.


Get Trials

Returns a list of trials previously created.

The date_start, date_end, page and limit URL parameters are required. The difference between date_start and date_end cannot exceed a 90 day period.

Schema: GetTrials
API Permission: trial:retrieve

get

/trials

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/trials
Response200

Get A Trial

Retrieve the details of a specific trial.

Schema: GetTrial
API Permission: trial:retrieve

get

/trials/{trial_id}

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/trials/{trial_id}
Response200

Expire A Trial

Expire a trial immediately using the trial ID. RevCent automatically expires trials on your behalf. Use this operation if you wish to expire a trial before its official expiration date.

Schema: ExpireTrial
API Permission: trial:expire

post

/trials/{trial_id}/expire

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/trials/{trial_id}/expire
Response200

Extend A Trial

Extend a trial by a specified number of days using the trial ID.

Schema: ExtendTrial
API Permission: trial:extend

post

/trials/{trial_id}/extend

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/trials/{trial_id}/extend
Response200

Shorten A Trial

Shorten a trial by a specified number of days using the trial ID.

Schema: ShortenTrial
API Permission: trial:shorten

post

/trials/{trial_id}/shorten

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters

Request Body


View Properties
post/trials/{trial_id}/shorten
Response200

Cancel A Trial

Cancel a trial using the trial ID. This will also cancel any subscription that is associated with the trial.

Schema: CancelTrial
API Permission: trial:cancel

post

/trials/{trial_id}/cancel

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
post/trials/{trial_id}/cancel
Response200

Search Trials

Search previously created trials using a search term.

Useful for finding a trial when you do not know the trial ID and wish to retrieve the details of a specific trial. Once a trial has been found, use an individual search results' id property and the GetTrial operation to retrieve the trial details.

Important: If using the SearchTrials and GetTrial method within a public facing flow, i.e. a visitor is providing the search input in a public chat bot, it is highly recommended that you also verify the visitor is indeed related to the trial using a secondary non-provided value, such as the customer ZIP code in the GetTrial response, before providing information or taking action.

Schema: SearchTrials
API Permission: trial:search

get

/trials/search

Path Parameters


View Path Parameters

URL Parameters


View URL Parameters
get/trials/search
Response200