API Documentation

The RushTranslate API lets you submit, track, and manage translation orders, making it easy to integrate translation services into your application. This guide covers everything you need to get started.

Request API access

Introduction

The RushTranslate API provides a seamless way to integrate professional document translation services into your applications. Whether you're managing document translations at scale or need certified translations with notarization, our API allows you to automate the entire workflow—from submitting files to retrieving completed translations and managing revisions.

This guide will walk you through the core API functionality, including how to create orders, upload and manage files, approve notarized documents, and track the progress of your translations in real time. With webhook notifications, you can stay updated on order status changes without the need for constant polling. Authentication is handled via secure personal access tokens, ensuring that your data remains protected.

You'll also find details on request formats, authentication methods, response structures, error handling, and rate limits to help you implement the API efficiently. Our sandbox environment allows for testing before deploying in production, ensuring a smooth integration process. Let's get started!

Workflow

To create an order, start by uploading files using individual POST requests to the files endpoint. The API will return an ID for each file, which you'll include in a POST request to the orders endpoint to associate them with the order.

Once the order is created, our team will review the files and any notes provided before assigning a translator. The order status will then update to in progress. If notarization is required, you'll need to approve it before finalization via the approval endpoint.

Webhooks allow you to receive real-time notifications when your order status changes, eliminating the need for polling. Files are securely stored on Amazon S3 with no public access and can be downloaded using a temporary signed URL that expires after five minutes.

If you need to request a revision, an endpoint is available for that as well. Reference files for revisions follow the same upload process as when placing an order.

Authentication

The API uses shared secret authentication, requiring your personal access token to be included in the HTTP Authorization header with the type set to Bearer. You can manage your tokens from your account settings page once enabled on your profile by our team. Since personal access tokens provide full read/write access to your account, handle them like passwords and keep them secure.

curl https://rushtranslate.com/api/v1/... \
    -H "Authorization: Bearer <token>" \
    -H "Accept: application/json"

URLs

We provide two environments: a sandbox for testing and a production environment for live applications. All endpoints use the following base URLs:

Sandbox URL

https://sandbox.rushtranslate.com/api/v1

Production URL

https://rushtranslate.com/api/v1

Requests

When making requests, parameters should be sent as JSON with the Content-Type: application/json header. The only exception is POST requests to the files endpoint, which require form data with the Content-Type: multipart/form-data header.

Certain fields, including order notes, comment body, and revision body, support basic HTML tags: b, br, em, li, ol, p, s, u, and ul. Any other tags or attributes will be stripped.

This API implements the following HTTP verbs:

  • GET - read resources
  • POST - create new resources
  • PATCH - modify existing resources
  • DELETE - remove resources

Responses

All endpoints return JSON with the Content-Type: application/json header.

Status Codes

Standard HTTP response codes indicate the outcome of requests, including successful responses, client errors, and server errors.

Code Name Description
200 OK Request was successful, and the response contains data
201 Created Resource was successfully created
204 No Content Request was successful, but there is no response body
400 Bad Request The request was malformed or could not be understood
401 Unauthorized API token is missing or invalid
403 Forbidden API token is valid, but access is denied
404 Not Found The requested resource does not exist
413 Entity Too Large The request exceeds the allowed size limit
422 Unprocessable Entity Validation failed. The response includes error details
429 Too Many Requests The request rate limit has been exceeded
500 Internal Server Error The server encountered an unexpected error
503 Service Unavailable The server is temporarily unable to process the request

Error Messages

Status codes other than 204 will return a response object with additional details in the message key. If validation fails, the API will return a 422 status and include an errors object, where field names serve as keys and error messages are provided as arrays. Nested fields use dot notation, as shown in the example.

{
    "message": "The given data was invalid.",
    "errors": {
        "services.source_language": [
            "The source language field is required."
        ],
        "services.target_language": [
            "The target language field is required."
        ]
    }
}

Rate Limiting

Requests are limited to 60 per minute. If the throttle limit is exceeded, a 429 status code will be returned. All responses include headers with your rate limit details.

Name Description
X-RateLimit-Limit Total number of requests allowed per minute.
X-RateLimit-Remaining Number of requests remaining in the current minute.
Retry-After Seconds to wait before the rate limit resets after being exceeded.

Pagination

Requests returning multiple results are paginated with a default of 60 items. You can override the per_page value, up to a maximum of 500 items. The response includes links and meta objects containing pagination details.

{
    "data": [...],
    "links": {
        "first": "https://rushtranslate.com/api/v1/orders?page=1",
        "last": "https://rushtranslate.com/api/v1/orders?page=3",
        "prev": "https://rushtranslate.com/api/v1/orders?page=1",
        "next": "https://rushtranslate.com/api/v1/orders?page=3"
    },
    "meta": {
        "current_page": 2,
        "from": 61,
        "last_page": 3,
        "path": "https://rushtranslate.com/api/v1/orders",
        "per_page": 60,
        "to": 120
    }
}

Webhooks

If you specify a callback URL when placing an order via our API, we will send an HTTP POST request to that URL to notify you of status changes. This request will include JSON in the body.

{
    "id": 3290541,
    "number": "12543-5465123",
    "status": "completed",
    "updated_at": "2026-03-01T22:00:26Z"
}

The following statuses will trigger a notification, along with their descriptions:

  • in_progress - Order has been assigned to a translator.
  • client_review - Order requires your approval before finalization.
  • completed - All files have been finalized and are ready for retrieval.
  • cancelled - Order has been cancelled, and any translation work has stopped.

We listen for the following status codes when making a POST request:

  • 200 - Request was successful; no retries will be made.
  • 406 - Request was not accepted; no retries will be made.
  • For any other status code, we will retry the POST request with the following delays: 15 minutes, 1 hour, 4 hours, 8 hours, and 24 hours.

Sandbox

We provide a sandbox environment for testing your integration. Contact us for help with account approval, setup, and generating a personal access token. The sandbox mirrors the standard lifecycle of quotes, orders, and revisions in our system, automatically advancing each entity to the next status every two minutes. When an order moves out of in_progress, a single PDF file is attached with a translation type to simulate a completed translation.

  • Quotes follow this status flow: requestedpending. Use the convert endpoint to turn a quote into an order.
  • Orders with notarization follow this status flow: receivedin_progressclient_reviewapprovedcompleted. After reaching client_review, the order pauses until you approve it via the order approval endpoint. Once approved, automatic transitions resume.
  • Orders without notarization follow this status flow: receivedin_progresscompleted.
  • Revisions follow this status flow: requestedin_progresscompleted.

Languages

The API provides a list of supported languages, including their ISO 639 codes and availability status. These language codes are required when placing orders to specify source and target languages.

Language Object

Field Type Description
code String ISO 639 language code
name String Language name
active Boolean Whether or not the language is currently active

List Languages

Retrieve the list of supported languages. The response includes language codes, which are required when placing orders via the API. Returns an array of Language Objects.

Request

GET https://rushtranslate.com/api/v1/languages

Response - 200

[
    {
        "code": "ar",
        "name": "Arabic",
        "active": true
    },
    {
        "code": "bg",
        "name": "Bulgarian",
        "active": true
    },
    ...
]

Files

The API allows you to upload, manage, and retrieve files associated with translation orders. Files can be categorized as source files for translation, reference materials, completed translations, or revisions. This section covers how to create, list, retrieve, download, and delete files, including details on file storage and access via temporary signed URLs.

File Object

Field Type Description
id Number File identifier
name String Name
type String Type of file - source, reference, translation or revision
size Number File size in bytes
download_url String Location for file download
created_at String Time and date when the file was created (UTC)

List Files

Retrieve a paginated list of files. The response includes a paginated array of File Objects.

Request

GET https://rushtranslate.com/api/v1/files

Request Parameters

Field Type Required Description
created_from String N Filter by created date, returning only those that were created on or after the specified date
created_to String N Filter by created date, returning only those that were created on or before the specified date
extension String N Filter by file extension; docx, pdf, xlsx, etc...
is_archived Boolean N Filter by archived status. Default is false
order Number N Filter by order ID
quote Number N Filter by quote ID
search String N Search by filename
sort String N Comma separated list of sort options; created_at, extension, filename, size, type, and updated_at. Prepend `-` for descending order.
type String N Comma separated list of file type options; source, reference, translation, or revision.

Response - 200

{
    "data": [
        {
            "id": 2304778,
            "name": "School Documents.jpg",
            "type": "source",
            "size": 39099,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T15:51:11Z"
        },
        ...
    ],
    "links": {...},
    "meta": {...}
}

Create a File

Upload a new file using a form data request with the Content-Type: multipart/form-data header. File uploads are limited to 100MB, and each file can be attached to only one resource after creation. Returns a File Object.

File types

  • source - files to be translated, if possible combine multi-page documents into a single file prior to upload
  • reference - reference files to assist the translator if being associated with an order resource or marked up files to be associated with a revision resource

Request

POST https://rushtranslate.com/api/v1/files
file: <binary file>
type: source

Request Parameters

Field Type Required Description
file Object Y File to be uploaded
type String Y Type of file - source or reference

Response - 201

{
    "id": 2304778,
    "name": "School Documents.jpg",
    "type": "source",
    "size": 39099,
    "download_url": "https://rushtranslate.com/api/v1/...",
    "created_at": "2026-02-17T15:51:11Z"
}

Retrieve a File

Retrieve detailed information about a specific file. Returns a File Object.

Request

GET https://rushtranslate.com/api/v1/files/:file_id

Response - 200

{
    "id": 2304778,
    "name": "School Documents.jpg",
    "type": "source",
    "size": 39099,
    "download_url": "https://rushtranslate.com/api/v1/...",
    "created_at": "2026-02-17T15:51:11Z"
}

Download a File

Generate a temporary download URL for a file. Files are encrypted and stored in an Amazon S3 bucket. This request returns a signed URL that provides secure access to download the file. URLs expire after five minutes.

Request

GET https://rushtranslate.com/api/v1/files/:file_id/download

Response - 200

{
    "url": "https://rushtranslate-s3.amazonaws.com/files/..."
}

Response Attributes

Field Type Description
url String Temporary download URL

Delete a File

Files can only be deleted if they have not been associated with a quote or order. To delete other files, please contact our support team.

Request

DELETE https://rushtranslate.com/api/v1/files/:file_id

Response - 204

No Content

Quotes

Quotes let you collect project details, review pricing, and confirm work before creating an order. This section shows how to request quotes, list and filter existing ones, retrieve full details, convert them to orders, and remove quotes you no longer need.

Quote Object

Some fields are not available until a newly requested quote has been prepared and its status moves out of requested.

Field Type Description
id Number Quote identifier
number String Quote number
url String Quote URL for web app
reference String Customer-supplied internal reference (number, ID, etc.)
field1 String Client-supplied data for use in custom coversheets for white label services
field2 String Client-supplied data for use in custom coversheets for white label services
source String Source of the quote - api or website
status String Current quote status - requested, pending, converted, or on_hold
source_language String ISO 639 source language code
target_language String ISO 639 target language code
total Number Quote total in cents (USD) – Not available while status is requested
memo String Quote memo from RushTranslate
requested_at String Time and date when the quote was requested (UTC)
converted_at String Time and date when the quote was converted to an order (UTC)
cancelled_at String Time and date when the quote was cancelled (UTC)
services Array List of Service Objects
files Array List of File Objects
comments Array List of Comment Objects

List Quotes

Retrieve a paginated list of your quotes. The response includes a paginated array of Quote Objects.

Request

GET https://rushtranslate.com/api/v1/quotes

Request Parameters

Field Type Required Description
requested_from String N Filter by requested date, returning only those that were requested on or after the specified date
requested_to String N Filter by requested date, returning only those that were requested on or before the specified date
converted_from String N Filter by converted date, returning only those that were converted on or after the specified date
converted_to String N Filter by converted date, returning only those that were converted on or before the specified date
search String N Search by filename or customer reference
status String N Comma separated list of statuses; requested, pending, converted, or on_hold
sort String N Comma separated list of sort options; requested_at, converted_at, status, and updated_at. Prepend `-` for descending order.
source_language String N Filter by source language ISO 639 language code
target_language String N Filter by target language ISO 639 language code

Response - 200

{
    "data": [
        {
            "id": 1214336,
            "number": "662-64270764",
            "url": "https://rushtranslate.com/quote/662-64270764/mC18ihWVx...",
            "order_id": 3290112,
            "reference":  null,
            "field1": "Lena Hartman",
            "field2": "Feb 1, 2026",
            "source": "api",
            "status": "converted",
            "source_language": "es",
            "target_language": "en",
            "total": 11270,
            "memo": null,
            "requested_at": "2026-02-17T15:52:13Z",
            "converted_at": "2026-02-18T14:04:50Z",
            "cancelled_at": null
        },
        ...
    ],
    "links": {...},
    "meta": {...}
}
Expand

Request a Quote

Request a new quote. Files must be uploaded first, as their IDs will be included in the files array of this request. The quote total and service quantity, price, discount, and total properties will not exist until the quote has been prepared and status updated to pending. Returns an Quote Object.

Request

POST https://rushtranslate.com/api/v1/quotes
{
    "reference":  null,
    "field1": "Lena Hartman",
    "field2": "Feb 1, 2026",
    "callback_url": "https://domain.com/webhooks",
    "notes": "<p>Please spell the last name Hartman.</p>",
    "services": {
        "source_language": "es",
        "target_language": "en",
        "certification": true,
        "expedited": true,
        "notarization": true,
        "currency_conversion": false
    },
    "files": [
        2304778
    ]
}

Request Parameters

Field Type Required Description
reference String N Your internal reference (number, ID, etc.)
field1 String N Data for use in custom coversheets for white label services
field2 String N Data for use in custom coversheets for white label services
callback_url String N Callback URL for webhooks
notes String N Notes for staff or translators - basic HTML allowed
services Object Y Specify the services you'd like to order
services.source_language String Y ISO 639 language code
services.target_language String Y ISO 639 language code
services.certification Boolean N If you would like certified translation service otherwise standard translation provided. - Default is false
services.expedited Boolean N If you would like expedited turnaround service. - Default is false
services.notarization Boolean N If you would like the certification notarized - only available with certified translation. - Default is false
services.currency_conversion Boolean N If you would like currency conversion - only available with certified translation. - Default is false
files Array Y List of file IDs - type must be either source or reference

Response - 201

{
    "id": 1214336,
    "number": "662-64270764",
    "url": "https://rushtranslate.com/quote/662-64270764/mC18ihWVx...",
    "order_id": null,
    "reference":  null,
    "field1": "Lena Hartman",
    "field2": "Feb 1, 2026",
    "source": "api",
    "status": "requested",
    "source_language": "es",
    "target_language": "en",
    "memo": null,
    "requested_at": "2026-02-17T15:52:13Z",
    "converted_at": null,
    "cancelled_at": null,
    "services": [
        {
            "name": "Certified Translation",
            "description": null,
        },
        {
            "name": "Expedited Turnaround",
            "description": null,
        },
        {
            "name": "Notarization",
            "description": null,
        }
    ],
    "files": [
        {
            "id": 2304778,
            "name": "School Documents.jpg",
            "type": "source",
            "size": 39099,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T15:51:11Z"
        }
    ],
    "comments": [
        {
            "author": "Lena Hartman",
            "body": "<p>Please spell last name Hartman.</p>",
            "created_at": "2026-02-17T15:52:13Z"
        }
    ]
}
Expand

Retrieve a Quote

Retrieve detailed information about a specific quote. Returns a Quote Object.

Request

GET https://rushtranslate.com/api/v1/quotes/:quote_id

Response - 200

{
    "id": 1214336,
    "number": "662-64270764",
    "url": "https://rushtranslate.com/quote/662-64270764/mC18ihWVx...",
    "order_id": 3290112,
    "reference":  null,
    "field1": "Lena Hartman",
    "field2": "Feb 1, 2026",
    "source": "api",
    "status": "pending",
    "source_language": "es",
    "target_language": "en",
    "total": 11270,
    "memo": null,
    "requested_at": "2026-02-17T15:52:13Z",
    "converted_at": null,
    "cancelled_at": null,
    "services": [
        {
            "name": "Certified Translation",
            "description": null,
            "quantity": 2,
            "price": 2495,
            "discount": 0,
            "total": 4990
        },
        {
            "name": "Expedited Turnaround",
            "description": null,
            "quantity": 2,
            "price": 1495,
            "discount": 0,
            "total": 2990
        },
        {
            "name": "Notarization",
            "description": null,
            "quantity": 1,
            "price": 1995,
            "discount": 0,
            "total": 1995
        }
    ],
    "files": [
        {
            "id": 2304778,
            "name": "School Documents.jpg",
            "type": "source",
            "size": 39099,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T15:51:11Z"
        }
    ],
    "comments": [
        {
            "author": "Lena Hartman",
            "body": "<p>Please spell last name Hartman.</p>",
            "created_at": "2026-02-17T15:52:13Z"
        }
    ]
}
Expand

Convert a Quote

Convert a quote to an order. The quote total will be added to your next invoice as a new transaction. Returns a Quote Object including the order_id of the newly created order.

Request

POST https://rushtranslate.com/api/v1/quotes/:quote_id/convert

Response - 200

{
    "id": 1214336,
    "number": "662-64270764",
    "url": "https://rushtranslate.com/quote/662-64270764/mC18ihWVx...",
    "order_id": 3290112,
    "reference":  null,
    "field1": "Lena Hartman",
    "field2": "Feb 1, 2026",
    "source": "api",
    "status": "converted",
    "source_language": "es",
    "target_language": "en",
    "total": 11270,
    "memo": null,
    "requested_at": "2026-02-17T15:52:13Z",
    "converted_at": "2026-02-18T14:04:50Z",
    "cancelled_at": null,
    "services": [
        {
            "name": "Certified Translation",
            "description": null,
            "quantity": 2,
            "price": 2495,
            "discount": 0,
            "total": 4990
        },
        {
            "name": "Expedited Turnaround",
            "description": null,
            "quantity": 2,
            "price": 1495,
            "discount": 0,
            "total": 2990
        },
        {
            "name": "Notarization",
            "description": null,
            "quantity": 1,
            "price": 1995,
            "discount": 0,
            "total": 1995
        }
    ],
    "files": [
        {
            "id": 2304778,
            "name": "School Documents.jpg",
            "type": "source",
            "size": 39099,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T15:51:11Z"
        }
    ],
    "comments": [
        {
            "author": "Lena Hartman",
            "body": "<p>Please spell last name Hartman.</p>",
            "created_at": "2026-02-17T15:52:13Z"
        }
    ]
}
Expand

Delete a Quote

Delete an existing quote. The associated files will also be deleted.

Request

DELETE https://rushtranslate.com/api/v1/quotes/:quote_id

Response - 204

No Content

Orders

The API allows you to create, manage, and track translation orders efficiently. Orders contain details such as status, language pairs, services, associated files, transactions, and comments. This section covers how to list, retrieve, create, approve, and cancel orders, ensuring seamless integration with your workflow.

Order Object

Some fields are not available until a newly placed order has been reviewed and its status moves out of received.

Field Type Description
id Number Order identifier
number String Order number
url String Order URL for web app
reference String Customer-supplied internal reference (number, ID, etc.)
field1 String Client-supplied data for use in custom coversheets for white label services
field2 String Client-supplied data for use in custom coversheets for white label services
source String Source of the order - api or website
status String Current order status - received, in_progress, in_review, client_review, approved, finalizing, in_revision, completed, on_hold, or cancelled
source_language String ISO 639 source language code
target_language String ISO 639 target language code
total Number Order total in cents (USD) – Not available while status is received
received_at String Time and date when the order was placed (UTC)
review_at String Time and date when the order was available for review by the client (UTC)
approved_at String Time and date when the order was approved by the client (UTC)
completed_at String Time and date when the order was completed (UTC)
cancelled_at String Time and date when the order was cancelled (UTC)
services Array List of Service Objects
files Array List of File Objects
transactions Array List of Transaction Objects – Not available while status is received
comments Array List of Comment Objects
revisions Array List of Revision Objects

List Orders

Retrieve a paginated list of your orders. The response includes a paginated array of Order Objects.

Request

GET https://rushtranslate.com/api/v1/orders

Request Parameters

Field Type Required Description
completed_from String N Filter by completed date, returning only those that were completed on or after the specified date
completed_to String N Filter by completed date, returning only those that were completed on or before the specified date
created_from String N Filter by created date, returning only those that were created on or after the specified date
created_to String N Filter by created date, returning only those that were created on or before the specified date
status String N Comma separated list of statuses; received, in_progress, in_review, client_review, approved, finalizing, in_revision, completed, on_hold, or cancelled
search String N Search by filename or customer reference
sort String N Comma separated list of sort options; completed_at, created_at, status, and updated_at. Prepend `-` for descending order.
source_language String N Filter by source language ISO 639 language code
target_language String N Filter by target language ISO 639 language code

Response - 200

{
    "data": [
        {
            "id": 3290112,
            "number": "55112-7859361",
            "url": "https://rushtranslate.com/order/55112-7859361/mC18ihWVx...",
            "reference": "HN-2632",
            "field1": "Alexander M. Montanez",
            "field2": "Feb 1, 2026",
            "source": "api",
            "status": "completed",
            "source_language": "es",
            "target_language": "en",
            "total": 11270,
            "received_at": "2026-02-17T15:52:13Z",
            "review_at": "2026-02-17T09:15:22Z",
            "approved_at": "2026-02-17T11:43:35Z",
            "completed_at": "2026-02-17T14:04:50Z",
            "cancelled_at": null
        },
        ...
    ],
    "links": {...},
    "meta": {...}
}
Expand

Place an Order

Place a new order. Files must be uploaded first, as their IDs will be included in the files array of this request. Returns an Order Object.

Request

POST https://rushtranslate.com/api/v1/orders
{
    "reference": "HN-2632",
    "field1": "Alexander M. Montanez",
    "field2": "Feb 1, 2026",
    "callback_url": "https://domain.com/webhooks",
    "notes": "<p>Please spell the last name Montanez.</p>",
    "services": {
        "source_language": "es",
        "target_language": "en",
        "certification": true,
        "expedited": true,
        "notarization": true,
        "currency_conversion": false
    },
    "files": [
        2304778
    ]
}

Request Parameters

Field Type Required Description
reference String N Your internal reference (number, ID, etc.)
field1 String N Data for use in custom coversheets for white label services
field2 String N Data for use in custom coversheets for white label services
callback_url String N Callback URL for webhooks
notes String N Notes for staff or translators - basic HTML allowed
services Object Y Specify the services you'd like to order
services.source_language String Y ISO 639 language code
services.target_language String Y ISO 639 language code
services.certification Boolean N If you would like certified translation service otherwise standard translation provided. - Default is false
services.expedited Boolean N If you would like expedited turnaround service. - Default is false
services.notarization Boolean N If you would like the certification notarized - only available with certified translation. - Default is false
services.currency_conversion Boolean N If you would like currency conversion - only available with certified translation. - Default is false
files Array Y List of file IDs - type must be either source or reference

Response - 201

{
    "id": 3290112,
    "number": "55112-7859361",
    "url": "https://rushtranslate.com/order/55112-7859361/mC18ihWVx...",
    "reference": "HN-2632",
    "field1": "Alexander M. Montanez",
    "field2": "Feb 1, 2026",
    "source": "api",
    "status": "received",
    "source_language": "es",
    "target_language": "en",
    "received_at": "2026-02-17T15:52:13Z",
    "review_at": null,
    "approved_at": null,
    "completed_at": null,
    "cancelled_at": null,
    "services": [
        {
            "name": "Certified Translation",
            "description": null,
        },
        {
            "name": "Expedited Turnaround",
            "description": null,
        },
        {
            "name": "Notarization",
            "description": null,
        }
    ],
    "files": [
        {
            "id": 2304778,
            "name": "School Documents.jpg",
            "type": "source",
            "size": 39099,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T15:51:11Z"
        }
    ],
    "comments": [
        {
            "author": "John Anderson",
            "body": "<p>Please spell last name Montanez.</p>",
            "created_at": "2026-02-17T15:52:13Z"
        }
    ]
}
Expand

Retrieve an Order

Retrieve detailed information about a specific order. Returns an Order Object.

Request

GET https://rushtranslate.com/api/v1/orders/:order_id

Response - 200

{
    "id": 3290112,
    "number": "55112-7859361",
    "url": "https://rushtranslate.com/order/55112-7859361/mC18ihWVx...",
    "reference": "HN-2632",
    "field1": "Alexander M. Montanez",
    "field2": "Feb 1, 2026",
    "source": "api",
    "status": "completed",
    "source_language": "es",
    "target_language": "en",
    "total": 11270,
    "received_at": "2026-02-17T15:52:13Z",
    "review_at": "2026-02-17T09:15:22Z",
    "approved_at": "2026-02-17T11:43:35Z",
    "completed_at": "2026-02-17T14:04:50Z",
    "cancelled_at": null,
    "services": [
        {
            "name": "Certified Translation",
            "description": null,
            "quantity": 2,
            "price": 2495,
            "discount": 0,
            "total": 4990
        },
        {
            "name": "Expedited Turnaround",
            "description": null,
            "quantity": 2,
            "price": 1495,
            "discount": 0,
            "total": 2990
        },
        {
            "name": "Notarization",
            "description": null,
            "quantity": 1,
            "price": 1995,
            "discount": 0,
            "total": 1995
        }
    ],
    "files": [
        {
            "id": 2304778,
            "name": "School Documents.jpg",
            "type": "source",
            "size": 39099,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T15:51:11Z"
        },
        {
            "id": 2304779,
            "name": "School-Documents-55112-7859361.pdf",
            "type": "translation",
            "size": 20748,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T13:04:13Z"
        }
    ],
    "transactions": [
        {
            "type": "charge",
            "amount": 11270,
            "description": "Order Payment",
            "payment_instrument": "invoice",
            "payment_type": null,
            "payment_description": null,
            "created_at": "2026-02-17T16:01:26Z"
        }
    ],
    "comments": [
        {
            "author": "John Anderson",
            "body": "<p>Please spell last name Montanez.</p>",
            "created_at": "2026-02-17T15:52:13Z"
        }
    ],
    "revisions": [
        {
            "id": 61233,
            "status": "completed",
            "body": "<p>School name is Canterbury School.</p>",
            "requested_at": "2026-02-17T12:22:57Z",
            "completed_at": "2026-02-17T13:04:13Z",
            "files": []
        }
    ]
}
Expand

Cancel an Order

Cancel an existing order. Only orders with a status of received can be canceled via the API. For orders with other statuses, please contact support.

Request

POST https://rushtranslate.com/api/v1/orders/:order_id/cancel

Response - 204

No Content

Approve an Order

Approve an order with a status of client_review.

Request

POST https://rushtranslate.com/api/v1/orders/:order_id/approve

Response - 204

No Content

Revisions

Revisions allow you to request changes to a completed translation. This section covers how to create, retrieve, list, and delete revisions, including the ability to attach reference files. Revisions follow a status flow, ensuring that changes are properly tracked and processed.

Revision Object

Field Type Description
id Number Revision identifier
status String Current revision status - requested, in_progress, in_review, completed or on_hold
body String Revision body HTML
requested_at String Time and date when the revision was requested (UTC)
completed_at String Time and date when the revision was completed (UTC)
files Array List of File objects

List Revisions

Retrieve a paginated list of your revisions, sorted in descending order by requested_at date. Returns a paginated list of Revision Objects.

Request

GET https://rushtranslate.com/api/v1/orders/:order_id/revisions

Response - 200

{
    "data": [
        {
            "id": 61233,
            "status": "completed",
            "body": "<p>Please spell last name as Silvia.</p>",
            "requested_at": "2026-03-22T19:56:01Z",
            "completed_at": "2026-03-22T23:13:27Z",
            "files": []
        },
        {
            "id": 61234,
            "status": "completed",
            "body": "<p>School name is Canterbury School.</p>",
            "requested_at": "2026-02-17T12:22:57Z",
            "completed_at": "2026-02-17T13:04:13Z",
            "files": [
                {
                "id": 23904338,
                "name": "ID Document.jpg",
                "type": "reference",
                "size": 80296,
                "download_url": "https://rushtranslate.com/api/v1/...",
                "created_at": "2026-02-17T12:21:04Z"
                }
            ]
        }
    ],
    "links": {...},
    "meta": {...}
}
Expand

Create a Revision

Create a new revision request for an order. Optional files must be uploaded first, as their IDs will be included in the files array of this request. Only files of type reference are accepted. Returns a Revision Object.

Request

POST https://rushtranslate.com/api/v1/orders/:order_id/revisions
{
    "body": "<p>School name is Canterbury School.</p>",
    "files": [
        23904338
    ]
}

Request Parameters

Field Type Required Description
body String Y Revision body - basic HTML allowed
files Array Y List of file IDs

Response - 201

{
    "id": 61233,
    "status": "completed",
    "body": "<p>School name is Canterbury School.</p>",
    "requested_at": "2026-02-17T12:22:57Z",
    "completed_at": "2026-02-17T13:04:13Z",
    "files": [
        {
            "id": 23904338,
            "name": "ID Document.jpg",
            "type": "reference",
            "size": 80296,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T12:21:04Z"
        }
    ]
}

Retrieve a Revision

Retrieve detailed information about a specific revision request. Returns a Revision Object.

Request

GET https://rushtranslate.com/api/v1/orders/:order_id/revisions/:revision_id

Response - 200

{
    "id": 61233,
    "status": "completed",
    "body": "<p>School name is Canterbury School.</p>",
    "requested_at": "2026-02-17T12:22:57Z",
    "completed_at": "2026-02-17T13:04:13Z",
    "files": [
        {
            "id": 23904338,
            "name": "ID Document.jpg",
            "type": "reference",
            "size": 80296,
            "download_url": "https://rushtranslate.com/api/v1/...",
            "created_at": "2026-02-17T12:21:04Z"
        }
    ]
}

Delete a Revision

Delete an existing revision request. Only revisions with a status of requested can be deleted via the API. For revisions with other statuses, please contact support.

Request

DELETE https://rushtranslate.com/api/v1/orders/:order_id/revisions/:revision_id

Response - 204

No Content

Objects

This section covers shared objects used across multiple endpoints, such as comments and services. These objects appear in both quote and order responses. Transactions appear only in order responses. Additional objects that have their own dedicated sections, including languages, files and revisions, can be found in the corresponding sections of this documentation.

Comment Object

Field Type Description
author String Name of the comment author
body String Comment body - basic HTML allowed
created_at String Time and date when the comment was created (UTC)

Service Object

Some fields are not available until the parent quote or order has been processed.

Field Type Description
name String Name
description String Description
quantity Number Quantity ordered – Not available until processed
price Number Price each in cents (USD) – Not available until processed
discount Number Discount each in cents (USD) – Not available until processed
total Number Total service price in cents (USD) – Not available until processed

Transaction Object

Field Type Description
type String Type of transaction - charge or refund
amount Number Transaction amount in cents (USD)
description String Description of the transaction
payment_instrument String Type of payment - invoice, us_bank_account, credit_card, paypal, etc.
payment_type String Type of payment method - visa, mastercard, paypal, ach, etc.
payment_description String Description of the payment method
created_at String Time and date when the transaction was created (UTC)