CARMA (Caregiver Record Management Application)

Description

CARMA is a Salesforce application that the VA's Caregivers Program uses to intake, track, and process Form 10-10CG submissions.

Authentication

This integration uses OAuth 2.0 JWT Bearer Flow for Server-to-Server Integration via the Restforce API (see Salesforce Docs).

Vets API will generate a JWT token, sign it with a private key (that we generated), then send it to salesforce for verification. Salesforce will use the corresponding cert to validate the token and respond with an access token.

This access token can be used to submit the Form 10-10CG Submission's data, metadata, and attachments.

Endpoints

Current endpoints in use:

  • POST {uri}/services/oauth2/token

  • POST {uri}/services/apexrest/carma/v1/1010-cg-submissions

  • POST {uri}/services/data/v47.0/sobjects/ContentVersion

Enviornments

  • Prod

    • Endpoint: /dsva-vagov/vets-api/prod/carma/url (Parameter Store)

    • Consumer Key: /dsva-vagov/vets-api/prod/carma/consumer_key (Parameter Store)

    • Username: /dsva-vagov/vets-api/prod/carma/username (Parameter Store)

    • Pub Certificate: carma-prod.crt

    • Private Key: /dsva-vagov/vets-api/prod/carma/key (Parameter Store)

  • Staging

    • Endpoint: /dsva-vagov/vets-api/staging/carma/url (Parameter Store)

    • Consumer Key: /dsva-vagov/vets-api/staging/carma/consumer_key (Parameter Store)

    • Username: /dsva-vagov/vets-api/staging/carma/username (Parameter Store)

    • Pub Certificate: carma-staging.crt

    • Private Key: /dsva-vagov/vets-api/staging/carma/key (Parameter Store)

  • REG

    • Endpoint: /dsva-vagov/vets-api/reg/carma/url (Parameter Store)

    • Consumer Key: /dsva-vagov/vets-api/reg/carma/consumer_key (Parameter Store)

    • Username: /dsva-vagov/vets-api/reg/carma/username (Parameter Store)

    • Pub Certificate: carma-dev.crt

    • Private Key: /dsva-vagov/vets-api/dev/carma/key (Parameter Store)

  • QA2

    • Endpoint: /dsva-vagov/vets-api/qa2/carma/url (Parameter Store)

    • Consumer Key: /dsva-vagov/vets-api/qa2/carma/consumer_key (Parameter Store)

    • Username: /dsva-vagov/vets-api/qa2/carma/username (Parameter Store)

    • Pub Certificate: carma-dev.crt

    • Private Key: /dsva-vagov/vets-api/dev/carma/key (Parameter Store)

Contacts

Name

Title

Company

Company Email

VA Email

Paul Kuprionas

Senior Architect

Acumen Solutions, Inc.

pkuprionas@acumensolutions.com

Paul.Kuprionas@va.gov

Ranganathan (Ranga) Balasubramanian

Architect

Acumen Solutions, Inc.

ranganathanb@acumensolutions.com

Ranganathan.Balasubramanian@va.gov

Milagros (Mili) Ridoutt

Senior Consultant

Acumen Solutions, Inc.

mridoutt@acumensolutions.com

Resources

Logging and Stats

Form 10-10CG submissions logs can be found with the message prefix "[Form 10-10CG]". We log the resulting CARMA Case ID on successful submissions and provide context on submissions that are bounced. All other runtime errors should be caught in sentry with the controller_name:caregivers_assistance_claims.

The logfile to use for these queries are:

  • dsva-vagov-prod/srv/vets-api/src/log/vets-api-server.log (app log file)

  • dsva-vagov-prod/srv/vets-api/src/log/vets-api-worker.log (background jobs)

Common CloudWatch Queries

Submission Stats - Result CountSubmission Stats - Additional StatsSubmission Stats - ErrorsSubmission Stats - PerformanceSubmissions - Successful Result ListAttachments - Results List

Sentry

Google Analytics

StatsD

Vets-API fires events with the naming prefix api.form1010cg.*