{ "opencollection": "1.0.0", "info": { "name": "Campfire Developer APIs Accounts Payable Revenue Recognition API", "version": "1.0.0" }, "items": [ { "info": { "name": "Revenue Recognition", "type": "folder" }, "items": [ { "info": { "name": "List Contracts", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts", "params": [ { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of contracts with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between active and deleted data." }, { "info": { "name": "Create Contract", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts", "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Create a new contract.\n\n Evergreen vs standard:\n - Standard contract: set is_evergreen=false and provide a fixed contract_end_date.\n - Evergreen contract: set is_evergreen=true and leave contract_end_date as null.\n The system manages a rolling effective_end_date, exposes working_end_date for downstream usage,\n and returns evergreen_locked_date for immutable historical boundary rules.\n\n Additional evergreen constraints:\n - is_evergreen and auto_renew cannot both be t" }, { "info": { "name": "List Contract Bundles", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/bundles", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of contract bundles with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between active and delete" }, { "info": { "name": "Create Contract Bundle", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/bundles", "params": [ { "name": "contract_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Create a new contract bundle.\n\n Evergreen vs standard:\n - Standard contracts require a fixed bundle end_date.\n - Evergreen contracts allow end_date to be null (open-ended) or set to a billing-period end date.\n Evergreen bundle start/end dates must align with billing period boundaries.\n\n Evergreen-specific option:\n - rebalance_journal_entries_indefinitely=true keeps invoice-journal rebalancing in sync as the evergreen\n contract extends.\n " }, { "info": { "name": "Retrieve Contract Bundle", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/bundles/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Contract Bundle" }, { "info": { "name": "Update Contract Bundle", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/bundles/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Contract Bundle" }, { "info": { "name": "Partial Update Contract Bundle", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/bundles/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Contract Bundle" }, { "info": { "name": "Delete Contract Bundle", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/bundles/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Contract Bundle" }, { "info": { "name": "List Contract Milestones", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of milestones for a specific contract with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between" }, { "info": { "name": "Create Contract Milestone", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones", "params": [ { "name": "contract_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Create a new milestone for a contract. This will automatically create an associated revenue transaction." }, { "info": { "name": "Get Bundle Allocations", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones/:milestone_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "milestone_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve the current bundle allocation details for a contract subscription, milestone, or usage." }, { "info": { "name": "Update Bundle Allocations", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones/:milestone_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "milestone_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Update the bundle allocations for a contract item.\n\n The sum of all line amounts must equal the bundle's total_amount.\n Changes will cascade to related RevenueTransactions and JournalEntries.\n " }, { "info": { "name": "Partial Update Bundle Allocations", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones/:milestone_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "milestone_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partially update bundle allocations. Same behavior as PUT." }, { "info": { "name": "Retrieve Contract Milestone", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Contract Milestone" }, { "info": { "name": "Update Contract Milestone", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Contract Milestone" }, { "info": { "name": "Partial Update Contract Milestone", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Contract Milestone" }, { "info": { "name": "Delete Contract Milestone", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/milestones/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Contract Milestone" }, { "info": { "name": "Get Prepaid Commit Summary", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commit-summary", "params": [ { "name": "contract_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Get Prepaid Commit Summary" }, { "info": { "name": "List Prepaid Commits", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "List Prepaid Commits" }, { "info": { "name": "Create Prepaid Commit", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits", "params": [ { "name": "contract_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Create Prepaid Commit" }, { "info": { "name": "List Prepaid Commit Consumption", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/consumption", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "List Prepaid Commit Consumption" }, { "info": { "name": "Create Prepaid Commit Consumption", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/consumption", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Create Prepaid Commit Consumption" }, { "info": { "name": "Update Prepaid Commit Consumption", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/consumption/:id", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Prepaid Commit Consumption" }, { "info": { "name": "Delete Prepaid Commit Consumption", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/consumption/:id", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Prepaid Commit Consumption" }, { "info": { "name": "Process Prepaid Commit Adjustments", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/process-adjustments", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Process adjustment events for a prepaid commit and create credit memos." }, { "info": { "name": "List Prepaid Commit Usage Events", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/usage-events", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "List Prepaid Commit Usage Events" }, { "info": { "name": "Get Prepaid Commit Usage Event Distinct Values", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/usage-events/distinct-values", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Return distinct values for a given JSONB data field, for filter dropdowns." }, { "info": { "name": "Get Prepaid Commit Usage Events Template", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/usage-events/template", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Download a CSV template (commit-scoped)." }, { "info": { "name": "Upload Prepaid Commit Usage Events", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:commit_id/usage-events/upload", "params": [ { "name": "commit_id", "value": "", "type": "path" }, { "name": "contract_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Upload a CSV of usage events for a specific prepaid commit (commit-scoped)." }, { "info": { "name": "Retrieve Prepaid Commit", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Prepaid Commit" }, { "info": { "name": "Update Prepaid Commit", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Prepaid Commit" }, { "info": { "name": "Partial Update Prepaid Commit", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Prepaid Commit" }, { "info": { "name": "Delete Prepaid Commit", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/prepaid-commits/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Prepaid Commit" }, { "info": { "name": "List Contract Subscriptions", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of contract subscriptions with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between active and " }, { "info": { "name": "Create Contract Subscription", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions", "params": [ { "name": "contract_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Create a new contract subscription.\n\n Evergreen vs standard:\n - Standard contract subscriptions generally provide explicit lines and fixed start/end dates.\n - Evergreen contract subscriptions can provide period_amount to auto-generate lines. Their dates must align\n to billing period boundaries and must not exceed the contract's current working_end_date.\n\n Notes:\n - Usage and milestone subscription flows are not supported for evergreen contracts.\n - For evergreen contr" }, { "info": { "name": "Retrieve Contract Subscription", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Contract Subscription" }, { "info": { "name": "Update Contract Subscription", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Contract Subscription" }, { "info": { "name": "Partial Update Contract Subscription", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Contract Subscription" }, { "info": { "name": "Delete Contract Subscription", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Contract Subscription" }, { "info": { "name": "Get Bundle Allocations", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions/:subscription_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "subscription_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve the current bundle allocation details for a contract subscription, milestone, or usage." }, { "info": { "name": "Update Bundle Allocations", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions/:subscription_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "subscription_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Update the bundle allocations for a contract item.\n\n The sum of all line amounts must equal the bundle's total_amount.\n Changes will cascade to related RevenueTransactions and JournalEntries.\n " }, { "info": { "name": "Partial Update Bundle Allocations", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/subscriptions/:subscription_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "subscription_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partially update bundle allocations. Same behavior as PUT." }, { "info": { "name": "List Contract Tier Price Overrides", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/tier-price-overrides", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "List Contract Tier Price Overrides" }, { "info": { "name": "Create Contract Tier Price Override", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/tier-price-overrides", "params": [ { "name": "contract_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Create Contract Tier Price Override" }, { "info": { "name": "List Contract Usage Revenue", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "List usage revenue records" }, { "info": { "name": "Create Contract Usage Revenue", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage", "params": [ { "name": "contract_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "List usage revenue records" }, { "info": { "name": "Retrieve Contract Usage Revenue", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve, update, and delete contract usage revenue records" }, { "info": { "name": "Update Contract Usage Revenue", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve, update, and delete contract usage revenue records" }, { "info": { "name": "Partially Update Contract Usage Revenue", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve, update, and delete contract usage revenue records" }, { "info": { "name": "Delete Contract Usage Revenue", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage/:id", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve, update, and delete contract usage revenue records" }, { "info": { "name": "Get Bundle Allocations", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage/:usage_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "usage_id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve the current bundle allocation details for a contract subscription, milestone, or usage." }, { "info": { "name": "Update Bundle Allocations", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage/:usage_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "usage_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Update the bundle allocations for a contract item.\n\n The sum of all line amounts must equal the bundle's total_amount.\n Changes will cascade to related RevenueTransactions and JournalEntries.\n " }, { "info": { "name": "Partial Update Bundle Allocations", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:contract_id/usage/:usage_id/allocations", "params": [ { "name": "contract_id", "value": "", "type": "path" }, { "name": "usage_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partially update bundle allocations. Same behavior as PUT." }, { "info": { "name": "Retrieve Contract", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Contract" }, { "info": { "name": "Update Contract", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Contract" }, { "info": { "name": "Partial Update Contract", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Contract" }, { "info": { "name": "Delete Contract", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Contract" }, { "info": { "name": "Duplicate Contract", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:id/duplicate", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Duplicate Contract" }, { "info": { "name": "rr_api_v1_contracts_minimum_commit_preview_retrieve", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:id/minimum-commit-preview", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Projected monthly minimum commitment true-up for a contract.\n\nRead-only. Returns the shortfall the month-end batch *would* post if it ran\nright now. Lets the contract detail screen show a live floor preview without\ntriggering writes from the UI." }, { "info": { "name": "Terminate Contract", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/:id/terminate", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Terminate a contract and optionally void associated invoices.\n\n If the user has permission to terminate contracts and void invoices, both operations\n are performed atomically. If the user lacks permission for either operation, a draft\n is created instead, and the response indicates which operations were drafted.\n\n Returns 400 if any of the provided void_invoice_ids are invalid (not found, already voided,\n has payments, void date is before the invoice date, or i" }, { "info": { "name": "Bulk Search Contracts", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/bulk-search", "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Search for contracts by deal_name in a single request." }, { "info": { "name": "Parse Contract", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/contracts/parse", "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Parse contract details from uploaded PDF files using AI." }, { "info": { "name": "List Contract Customers", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/customers", "params": [ { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of contract customers with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between active and dele" }, { "info": { "name": "Retrieve Contract Customer", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/customers/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Contract Customer" }, { "info": { "name": "Update Contract Customer", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/customers/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Contract Customer" }, { "info": { "name": "Partial Update Contract Customer", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/customers/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Contract Customer" }, { "info": { "name": "Delete Contract Customer", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/customers/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Contract Customer" }, { "info": { "name": "Modify Subscription Schedule", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/modify-subscription-schedule", "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Generate a modified subscription schedule by comparing a new schedule against an existing subscription. Returns the delta between the original and modified schedules, with support for catch-up accounting and contract end date modifications." }, { "info": { "name": "List Contract Products", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/product", "params": [ { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of contract products with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between active and delet" }, { "info": { "name": "Create Contract Product", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/product", "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Create a new product" }, { "info": { "name": "List Product Bundles", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/product-bundles", "params": [ { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of product bundles with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between active and deleted" }, { "info": { "name": "Create Product Bundle", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/product-bundles", "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Create a new product bundle with products and percentage allocations. Total percentage must equal 100." }, { "info": { "name": "Retrieve Product Bundle", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/product-bundles/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Product Bundle" }, { "info": { "name": "Update Product Bundle", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/product-bundles/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Product Bundle" }, { "info": { "name": "Partial Update Product Bundle", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/product-bundles/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Product Bundle" }, { "info": { "name": "Delete Product Bundle", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/product-bundles/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Product Bundle" }, { "info": { "name": "Retrieve Product", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/product/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Product" }, { "info": { "name": "Update Product", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/product/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Product" }, { "info": { "name": "Partial Update Product", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/product/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Product" }, { "info": { "name": "Delete Product", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/product/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Product" }, { "info": { "name": "List Revenue Transactions", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/transactions", "params": [ { "name": "include_deleted", "value": "", "type": "query", "description": "When set to 'true', returns ONLY deleted records instead of active records. Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp, and 'last_modified_at'. When 'false' or omitted, returns ONLY active records. This provides clean separation between active and deleted data." }, { "name": "last_modified_at__gte", "value": "", "type": "query", "description": "Filter for records modified on or after this timestamp. Format: ISO 8601 (e.g., '2024-01-01T00:00:00Z' or '2024-01-01'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "last_modified_at__lte", "value": "", "type": "query", "description": "Filter for records modified on or before this timestamp. Format: ISO 8601 (e.g., '2024-12-31T23:59:59Z' or '2024-12-31'). Works with both active records and deleted records (filters by deletion time for deleted records)." }, { "name": "limit", "value": "", "type": "query", "description": "Number of results to return per page." }, { "name": "offset", "value": "", "type": "query", "description": "The initial index from which to return the results." } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "\n Retrieve a list of revenue transactions with optional filtering and sorting.\n\n Supports including soft-deleted records for audit and recovery purposes.\n When include_deleted=true, returns ONLY deleted records instead of active records.\n Deleted records contain minimal data: 'id', 'is_deleted=true', 'deleted_at' timestamp,\n and 'last_modified_at'. When 'false' or omitted, returns ONLY active records.\n This provides clean separation between active and de" }, { "info": { "name": "Create Revenue Transaction", "type": "http" }, "http": { "method": "POST", "url": "https://api.meetcampfire.com/rr/api/v1/transactions", "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Create a new revenue transaction" }, { "info": { "name": "Retrieve Revenue Transaction", "type": "http" }, "http": { "method": "GET", "url": "https://api.meetcampfire.com/rr/api/v1/transactions/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Retrieve Revenue Transaction" }, { "info": { "name": "Update Revenue Transaction", "type": "http" }, "http": { "method": "PUT", "url": "https://api.meetcampfire.com/rr/api/v1/transactions/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Update Revenue Transaction" }, { "info": { "name": "Partial Update Revenue Transaction", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.meetcampfire.com/rr/api/v1/transactions/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Partial Update Revenue Transaction" }, { "info": { "name": "Delete Revenue Transaction", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.meetcampfire.com/rr/api/v1/transactions/:id", "params": [ { "name": "id", "value": "", "type": "path" } ], "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "docs": "Delete Revenue Transaction" } ] } ], "bundled": true }