Skip to content
briansemify edited this page Oct 21, 2025 · 2 revisions

Password Locker (IAM Credentials)

Overview

The Password Locker (IAM Credentials) service allows you to securely store and manage third-party credentials, CMS login information, and other sensitive data for internal use. This service provides encrypted storage and secure access to credentials tied to specific campaigns.

Endpoint

POST /api/v1/accounts/iam/credentials

Authentication

  • Required: JWT Bearer Token
  • Security: Only authorized reseller accounts can access their own credentials

Required Fields

  • reseller_account_id (integer): Your reseller account ID
  • account_id (integer): Account identifier
  • campaign_id (integer): Campaign identifier
  • credentials_types_id (integer): Site/service type identifier (see Site Types below)
  • password (string): Password to store (will be encrypted)
  • username (string): Username for the credential
  • note (string): Description or notes about the credential

Request Example

{
    "reseller_account_id": 12345,
    "account_id": 424685,
    "campaign_id": 476273,
    "credentials_types_id": 20,
    "username": "cms_admin",
    "password": "secure_password_123",
    "note": "WordPress CMS admin credentials for main website"
}

Response Example

{
    "data": {},
    "messages": [
        "Successful creation"
    ],
    "pagination": {
        "maxRows": 0,
        "totalPages": 1,
        "offset": 0,
        "page": 1,
        "totalRecords": 0
    },
    "error": false
}

Site Types (credentials_types_id)

Use these IDs to specify the type of service/platform for your credentials:

ID Site Type Description
1 Twitter Twitter account credentials
2 Facebook Facebook account credentials
3 Google Plus Google Plus account credentials
4 Hosting Web hosting account credentials
5 DNS DNS management credentials
6 Google Analytics Google Analytics account
7 Google Adwords Google Ads account
8 MS Adcenter Microsoft Advertising account
9 Marchex Marchex platform credentials
10 LinkedIn LinkedIn account credentials
11 Adroll Adroll advertising platform
12 Bing Local Bing Local Business credentials
13 Yahoo Local Yahoo Local Business credentials
14 Express Update USA Express Update platform
15 Shopzilla Shopzilla marketplace
16 Nextag Nextag marketplace
17 CRM Customer Relationship Management system
18 PR Public Relations platform
19 Blog Blog platform credentials
20 WordPress WordPress CMS credentials
21 Joomla Joomla CMS credentials
22 Drupal Drupal CMS credentials
23 Other Other platform credentials
24 Yelp Yelp Business account
25 FTP FTP server credentials
26 CMS Generic CMS credentials
27 Search Console Google Search Console
28 Google My Business Google My Business account
29 Hi Hi platform credentials
30 Google Analytics 4 Google Analytics 4 account
31 Duda Duda website builder

Security Features

  • Encryption: Passwords are encrypted using AES encryption before storage
  • Account Ownership: Access is restricted to authorized reseller accounts
  • Campaign Association: Credentials are tied to specific campaigns for organization
  • Audit Trail: Access and modifications are logged for security compliance

Use Cases

  • CMS Credentials: WordPress, Joomla, Drupal admin access
  • Social Media: Facebook, Twitter, LinkedIn business accounts
  • Analytics: Google Analytics, Google Search Console access
  • Advertising: Google Ads, Microsoft Advertising accounts
  • Hosting: Web hosting and FTP server credentials
  • Third-party Services: CRM, PR platforms, marketplace accounts

Best Practices

  • Minimal Storage: Only store credentials required for specific tasks
  • Regular Rotation: Implement credential rotation and update IAM entries accordingly
  • Descriptive Notes: Use clear, descriptive notes to identify credential purposes
  • Secure Transmission: Always use HTTPS when transmitting credentials
  • Access Control: Limit credential access to authorized personnel only

Error Handling

  • 400 Bad Request: Missing or invalid required fields
  • 401 Unauthorized: Invalid or expired authentication token
  • 422 Unprocessable Content: Invalid credentials_types_id or ownership verification failure
  • 500 Internal Server Error: Server-side processing errors

Integration Example

curl -X POST "https://uat.services.semify.com/api/v1/accounts/iam/credentials" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "reseller_account_id": 12345,
    "account_id": 424685,
    "campaign_id": 476273,
    "credentials_types_id": 20,
    "username": "admin",
    "password": "secure_password",
    "note": "WordPress admin credentials"
  }'

Clone this wiki locally