String docs
Site integrations

Capterra

Capterra software products and reviews: company, description, pricing, categories and rating averages, and every review's pros, cons, comments, ratings, date and reviewer details.

Call these actions with your String API key; see Authentication. Every call answers with the envelope described in Responses & errors, whose data holds the rows below.

  • Site: capterra
  • Version: 1.0.0
  • Reads from: capterra.com
ActionDescriptionListed price
productRead software products' Capterra listings: company, description, target market, categories, deployment, pricing plans and free options, review count, average overall and four sub-ratings, listed alternatives and features with their ratings.Billed per request at your plan's rates
reviewsRead a software product's Capterra reviews, newest first or by Capterra's other sorts, optionally one rating, company size, reviewer role, length or frequency of use. Each has its title, date, pros, cons, comments, overall and four sub-ratings, likelihood to recommend, reasons for choosing or switching, alternatives named, the reviewer's name as Capterra shows it, job title, industry, company size and time using the product, and the company's reply. Every review is reachable: one call reads up to 100 pages of 25 and answers within 150 seconds; the last row's cursor goes on in the next call.Billed per request at your plan's rates

product

Read software products' Capterra listings: company, description, target market, categories, deployment, pricing plans and free options, review count, average overall and four sub-ratings, listed alternatives and features with their ratings.

POST https://request.usestring.ai/v1/integrations/capterra/product

Input

Unknown fields are rejected.

FieldTypeDescription
itemsstring[]Required. The products: each a numeric Capterra id, such as 172485, or a capterra.com/p/<id>/<name> URL. 1 to 300 entries.

Output

data is an array of rows, one per result. Each row has:

FieldTypeDescription
idstring—
urlstring—
slugstring—
namestring | null—
companystring | nullThe company behind the product.
logoUrlstring | null—
descriptionstring | null—
targetMarketstring | nullWho the company says the product is for.
modifiedAtstring | nullWhen Capterra's listing last changed, ISO 8601.
reviewCountinteger | null—
videoReviewCountinteger | null—
ratingnumber | nullThe average overall rating, 1 to 5.
easeOfUseRatingnumber | null—
customerSupportRatingnumber | null—
functionalityRatingnumber | null—
valueForMoneyRatingnumber | null—
categoriesobject[] | null—
categories[].namestring | null—
categories[].slugstring | null—
deploymentstring[] | nullWhere the product runs, as Capterra lists it.
currencystring | nullThe currency of plans' prices.
pricingDescriptionstring | null—
hasFreeTrialboolean | null—
hasFreeVersionboolean | null—
plansobject[] | null—
plans[].namestring | null—
plans[].startingPricenumber | null—
plans[].paymentFrequencystring | null—
plans[].pricingModelstring | null—
plans[].isDefaultboolean | null—
alternativesobject[] | nullProducts Capterra lists as alternatives.
alternatives[].idstring | null—
alternatives[].namestring | null—
alternatives[].slugstring | null—
featuresobject[] | nullFeatures reviewers rated, from the product's overview page. Empty when the product has none.
features[].namestring | null—
features[].descriptionstring | null—
features[].ratingnumber | nullThe feature's average rating, 1 to 5.
features[].reviewCountinteger | nullThe reviews that rated it.

Example

curl https://request.usestring.ai/v1/integrations/capterra/product \
  -H "Authorization: Bearer $STRING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "items": ["https://www.capterra.com/p/172485/Shepherd-App/reviews/"]
  }'

data starts with these rows:

[
  {
    "id": "172485",
    "url": "https://www.capterra.com/p/172485/Shepherd-App/",
    "slug": "Shepherd-App",
    "name": "Shepherd",
    "company": "Shepherd Software",
    "logoUrl": "https://gdm-catalog-fmapi-prod.imgix.net/ProductLogo/20cc3f50-11d7-47bf-ab2a-5e767910c2fb.jpeg",
    "description": "Good software shouldn’t slow you down. It should feel like part of the team.\n\nShepherd is …",
    "targetMarket": "For clinics that want less admin and smoother days. Veterinary practice owners and manager…",
    "modifiedAt": "2026-10-19T09:22:06Z",
    "reviewCount": 89,
    "videoReviewCount": 0,
    "rating": 4.7,
    "easeOfUseRating": 4.9,
    "customerSupportRating": 4.8,
    "functionalityRating": 4.6,
    "valueForMoneyRating": 4.7,
    "categories": [
      {
        "name": "Veterinary",
        "slug": "veterinary-software"
      }
    ],
    "deployment": ["Cloud, SaaS, Web-Based"],
    "currency": "USD",
    "pricingDescription": "Shepherd includes unlimited users, expert training, vet-experienced support, unlimited wor…",
    "hasFreeTrial": true,
    "hasFreeVersion": false,
    "plans": [
      {
        "name": "Shepherd",
        "startingPrice": 299,
        "paymentFrequency": "Per Month",
        "pricingModel": "Other",
        "isDefault": true
      }
    ],
    "alternatives": [
      {
        "id": "133166",
        "name": "DaySmart Vet",
        "slug": "DaySmart-Vet"
      },
      {
        "id": "234498",
        "name": "Instinct Science",
        "slug": "Instinct-EMR"
      },
      {
        "id": "130107",
        "name": "Covetrus Pulse",
        "slug": "Covetrus-Pulse"
      }
    ],
    "features": [
      {
        "name": "Appointment Scheduling",
        "description": "Schedule appointments via a calendar",
        "rating": 4.793103448275862,
        "reviewCount": 58
      },
      {
        "name": "Patient Records Management",
        "description": "Managing different types of patient records, including paper documents, digital files, bil…",
        "rating": 4.649122807017544,
        "reviewCount": 57
      },
      {
        "name": "Billing & Invoicing",
        "description": "Create, manage, and send invoices or bills to customers",
        "rating": 4.461538461538462,
        "reviewCount": 52
      }
    ]
  }
]

Requests and billing

  • Requests: 1–3 Web Access requests per entry in items.
  • Billing: passthrough. Each request the action makes bills at its own rate on your plan; there is no separate charge for the action. See Pricing.

reviews

Read a software product's Capterra reviews, newest first or by Capterra's other sorts, optionally one rating, company size, reviewer role, length or frequency of use. Each has its title, date, pros, cons, comments, overall and four sub-ratings, likelihood to recommend, reasons for choosing or switching, alternatives named, the reviewer's name as Capterra shows it, job title, industry, company size and time using the product, and the company's reply. Every review is reachable: one call reads up to 100 pages of 25 and answers within 150 seconds; the last row's cursor goes on in the next call.

POST https://request.usestring.ai/v1/integrations/capterra/reviews

Input

Unknown fields are rejected.

FieldTypeDescription
productstringThe product: its numeric Capterra id, such as 172485, or its capterra.com/p/<id>/<name> URL. Optional when cursor is sent. At least 1 character.
sortmost_recent most_helpful highest_rated lowest_ratedmost_recent (the default), most_helpful, highest_rated or lowest_rated.
ratingintegerOnly reviews with this overall star rating, 1 to 5. From 1 to 5.
companySize1-10 10001+ 1001-5000 11-50 201-500 5001-10000 501-1000 51-200 self-employedOnly reviewers at a company of this size, in employees.
roleadministrator other userOnly reviewers with this role with the product. Capterra filters on it but does not show it on a review.
timeUsed1_to_2_years 6_to_12_months free_trial over_2_years under_6_monthsOnly reviewers who have used the product this long.
usageFrequencydaily monthly other weeklyOnly reviewers who use the product this often. Capterra filters on it but does not show it on a review.
pagesintegerThe most pages of up to 25 reviews to read, 1 to 100. Defaults to 4. Each row's totalReviews says how many there are. From 1 to 100.
cursorstringA row's cursor from an earlier call: this call goes on with the page after that row's, with the same product, sort and filters. Send it in place of them. At least 1 character.

Output

data is an array of rows, one per result. Each row has:

FieldTypeDescription
idstring—
productIdstring—
productNamestring | null—
productUrlstring—
titlestring | null—
publishedAtstring | nullThe date Capterra gives the review, as YYYY-MM-DD.
ratingnumber | nullThe overall rating, 1 to 5.
easeOfUseRatingnumber | null1 to 5, absent when not rated.
customerSupportRatingnumber | null1 to 5, absent when not rated.
functionalityRatingnumber | null1 to 5, absent when not rated.
valueForMoneyRatingnumber | null1 to 5, absent when not rated.
recommendationRatingnumber | nullHow likely the reviewer is to recommend the product, 0 to 10.
prosstring | null—
consstring | null—
commentsstring | nullThe reviewer's overall comments.
chosenReasonsstring | nullWhy the reviewer chose this product over the alternatives they considered.
switchingReasonsstring | nullWhy the reviewer switched to this product.
advicestring | nullThe reviewer's advice to others.
reviewerNamestring | nullAs Capterra shows it, typically a first name and initial.
reviewerJobTitlestring | null—
reviewerIndustrystring | null—
reviewerCompanySizestring | nullA band such as 11-50 employees.
reviewerTimeUsedstring | nullHow long the reviewer has used the product, a band such as 1-2 years.
reviewerPictureUrlstring | null—
reviewerAnonymousboolean | nullWhether the reviewer chose not to show their name.
reviewerValidatedboolean | null—
reviewerValidationsstring[] | nullHow Capterra validated the reviewer, such as LinkedIn or BusinessEmail.
sourceSitestring | nullWhere the review was collected, Capterra or a sister site.
incentivestring | nullCapterra's incentive label, such as NoIncentive or VendorReferredIncentivized.
disclosureCodestring | nullCapterra's short code for how the review was solicited, such as NO or VRI.
disclosurestring | nullThe disclosure Capterra shows for that code.
alternativesConsideredobject[] | null—
alternativesConsidered[].idstring | null—
alternativesConsidered[].namestring | null—
alternativesConsidered[].slugstring | null—
switchedFromobject[] | null—
switchedFrom[].idstring | null—
switchedFrom[].namestring | null—
switchedFrom[].slugstring | null—
companyResponsestring | nullThe public reply from the company behind the product.
companyResponseDatestring | nullThe date Capterra gives the reply, as YYYY-MM-DD.
totalReviewsinteger | nullHow many reviews match this read's filters.
cursorstring | nullGoes on with the page after this row's: send it as the next call's cursor. Null on the last page.

Example

curl https://request.usestring.ai/v1/integrations/capterra/reviews \
  -H "Authorization: Bearer $STRING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "product": "https://www.capterra.com/p/172485/Shepherd-App/reviews/",
    "sort": "most_recent",
    "pages": 2
  }'

data starts with these rows:

[
  {
    "id": "Capterra___7212651",
    "productId": "172485",
    "productName": "Shepherd",
    "productUrl": "https://www.capterra.com/p/172485/Shepherd-App/",
    "title": "Two paws up!",
    "publishedAt": "2026-09-11",
    "rating": 5,
    "easeOfUseRating": 5,
    "customerSupportRating": 5,
    "functionalityRating": 4,
    "valueForMoneyRating": 4,
    "recommendationRating": 10,
    "pros": "I love how customizable the program is. It can be tailored to our specific practice needs.…",
    "cons": "When you edit the inventory/products individually, it brings you back to the beginning of …",
    "comments": "From the time of the demo meeting to the actual setting up the program, every person has b…",
    "chosenReasons": null,
    "switchingReasons": "cumbersome, nobody knew how to use it, slow",
    "advice": null,
    "reviewerName": null,
    "reviewerJobTitle": "Veterinarian",
    "reviewerIndustry": "Veterinary",
    "reviewerCompanySize": "1-10 employees",
    "reviewerTimeUsed": "6-12 months",
    "reviewerPictureUrl": null,
    "reviewerAnonymous": false,
    "reviewerValidated": true,
    "reviewerValidations": ["ProofOfLink"],
    "sourceSite": "Capterra",
    "incentive": "VendorReferred",
    "disclosureCode": "VR",
    "disclosure": null,
    "alternativesConsidered": [],
    "switchedFrom": [
      {
        "id": "92887",
        "name": "Covetrus Avimark",
        "slug": "AVImark"
      }
    ],
    "companyResponse": null,
    "companyResponseDate": null,
    "totalReviews": 89,
    "cursor": null
  },
  {
    "id": "Capterra___7204443",
    "productId": "172485",
    "productName": "Shepherd",
    "productUrl": "https://www.capterra.com/p/172485/Shepherd-App/",
    "title": "Sheperd is not there yet!! Scrolling and clicking software.",
    "publishedAt": "2026-08-24",
    "rating": 3,
    "easeOfUseRating": 3,
    "customerSupportRating": 3,
    "functionalityRating": 3,
    "valueForMoneyRating": 4,
    "recommendationRating": 1,
    "pros": "Creating a Soap is logical but hate conferimation extra step, lost income step.  Conversio…",
    "cons": "Lots of time spent retrieving MR for what was done last time or last year. Software is com…",
    "comments": "Disappointed, I should have looked closer. Since very well advertised and has great review…",
    "chosenReasons": "Quality of product seemed better and more tested. Definitely better advertised.",
    "switchingReasons": "Looking for customer support and increased efficiency.",
    "advice": null,
    "reviewerName": null,
    "reviewerJobTitle": "Veterinarian",
    "reviewerIndustry": "Veterinary",
    "reviewerCompanySize": "1-10 employees",
    "reviewerTimeUsed": "Less than 6 months",
    "reviewerPictureUrl": null,
    "reviewerAnonymous": false,
    "reviewerValidated": true,
    "reviewerValidations": ["LinkedIn", "ProofOfLink"],
    "sourceSite": "Capterra",
    "incentive": "NoIncentive",
    "disclosureCode": "NO",
    "disclosure": null,
    "alternativesConsidered": [
      {
        "id": "178450",
        "name": "NaVetor",
        "slug": "Patterson-Technology"
      },
      {
        "id": "186557",
        "name": "Nectar",
        "slug": "PerkNow"
      }
    ],
    "switchedFrom": [
      {
        "id": "92897",
        "name": "Vetport",
        "slug": "Vetport"
      }
    ],
    "companyResponse": null,
    "companyResponseDate": null,
    "totalReviews": 89,
    "cursor": null
  }
]

Requests and billing

  • Requests: 1–2 Web Access requests per result page, plus up to 8 setup requests per call.
  • Billing: passthrough. Each request the action makes bills at its own rate on your plan; there is no separate charge for the action. See Pricing.