diff --git a/.gitignore b/.gitignore index cd76f07..f3f5399 100644 --- a/.gitignore +++ b/.gitignore @@ -223,3 +223,4 @@ Temporary Items *.tmproj *.tmproject tmtags +/.codex diff --git a/.idea/misc.xml b/.idea/misc.xml index 1c3f3fd..e6ab90e 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,5 +1,6 @@ + @@ -10,5 +11,5 @@ - + \ No newline at end of file diff --git a/.swagger-codegen/kbswagger.yaml b/.swagger-codegen/kbswagger.yaml index fdae7f7..3e6ea09 100644 --- a/.swagger-codegen/kbswagger.yaml +++ b/.swagger-codegen/kbswagger.yaml @@ -34,54 +34,63 @@ tags: - name: "PaymentTransaction" - name: "Usage" paths: - /1.0/kb/accounts/{childAccountId}/transferCredit: - put: + /1.0/kb/accounts/{accountId}/children: + get: tags: - "Account" - summary: "Move a given child credit to the parent level" + summary: "List children accounts" description: "" - operationId: "transferChildCreditToParent" - consumes: - - "application/json" + operationId: "getChildrenAccounts" produces: - "application/json" parameters: - - name: "childAccountId" + - name: "accountId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" + - name: "accountWithBalance" + in: "query" required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "boolean" + default: false + - name: "accountWithBalanceAndCBA" + in: "query" + required: false + type: "boolean" + default: false + - name: "audit" + in: "query" required: false type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/Account" "400": - description: "Account does not have credit" + description: "Invalid parent account id supplied" "404": - description: "Account not found" + description: "Parent Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/auditLogsWithHistory: + /1.0/kb/accounts/{accountId}/emails: get: tags: - "Account" - summary: "Retrieve account audit logs with history by account id" + summary: "Retrieve an account emails" description: "" - operationId: "getAccountAuditLogsWithHistory" + operationId: "getEmails" produces: - "application/json" parameters: @@ -97,20 +106,21 @@ paths: schema: type: "array" items: - $ref: "#/definitions/AuditLog" - "404": - description: "Account not found" + $ref: "#/definitions/AccountEmail" + "400": + description: "Invalid account id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/emails/{accountEmailId}/auditLogsWithHistory: - get: + post: tags: - "Account" - summary: "Retrieve account email audit logs with history by id" + summary: "Add account email" description: "" - operationId: "getAccountEmailAuditLogsWithHistory" + operationId: "addEmail" + consumes: + - "application/json" produces: - "application/json" parameters: @@ -120,113 +130,128 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "accountEmailId" - in: "path" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/AccountEmail" + - name: "X-Killbill-CreatedBy" + in: "header" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: - "200": - description: "successful operation" + "201": + description: "Email created successfully" schema: type: "array" items: - $ref: "#/definitions/AuditLog" + $ref: "#/definitions/AccountEmail" + "400": + description: "Invalid account id supplied" "404": description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/block/{blockingId}/auditLogsWithHistory: + /1.0/kb/accounts: get: tags: - "Account" - summary: "Retrieve blocking state audit logs with history by id" + summary: "Retrieve an account by external key" description: "" - operationId: "getBlockingStateAuditLogsWithHistory" + operationId: "getAccountByKey" produces: - "application/json" parameters: - - name: "blockingId" - in: "path" + - name: "externalKey" + in: "query" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + - name: "accountWithBalance" + in: "query" + required: false + type: "boolean" + default: false + - name: "accountWithBalanceAndCBA" + in: "query" + required: false + type: "boolean" + default: false + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: "200": description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" + $ref: "#/definitions/Account" "404": - description: "Blocking state not found" + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/invoices/pagination: - get: + post: tags: - "Account" - summary: "Retrieve paginated invoices for account" + summary: "Create account" description: "" - operationId: "getInvoicesForAccountPaginated" + operationId: "createAccount" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "accountId" - in: "path" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/Account" + - name: "X-Killbill-CreatedBy" + in: "header" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" + - name: "X-Killbill-Reason" + in: "header" required: false - type: "integer" - default: 100 - format: "int64" - - name: "audit" - in: "query" + type: "string" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" + "201": + description: "Account created successfully" schema: - type: "array" - items: - $ref: "#/definitions/Invoice" + $ref: "#/definitions/Account" "400": - description: "Invalid account id supplied" - "404": - description: "Account not found" + description: "Invalid account data supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/paymentMethods: + /1.0/kb/accounts/{accountId}: get: tags: - "Account" - summary: "Retrieve account payment methods" + summary: "Retrieve an account by id" description: "" - operationId: "getPaymentMethodsForAccount" + operationId: "getAccount" produces: - "application/json" parameters: @@ -236,23 +261,16 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "withPluginInfo" + - name: "accountWithBalance" in: "query" required: false type: "boolean" default: false - - name: "includedDeleted" + - name: "accountWithBalanceAndCBA" in: "query" required: false type: "boolean" default: false - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - name: "audit" in: "query" required: false @@ -266,9 +284,7 @@ paths: "200": description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/PaymentMethod" + $ref: "#/definitions/Account" "400": description: "Invalid account id supplied" "404": @@ -277,12 +293,12 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + put: tags: - "Account" - summary: "Add a payment method" + summary: "Update account" description: "" - operationId: "createPaymentMethod" + operationId: "updateAccount" consumes: - "application/json" produces: @@ -298,31 +314,12 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/PaymentMethod" - - name: "isDefault" - in: "query" - required: false - type: "boolean" - default: false - - name: "payAllUnpaidInvoices" + $ref: "#/definitions/Account" + - name: "treatNullAsReset" in: "query" required: false type: "boolean" default: false - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -336,59 +333,49 @@ paths: required: false type: "string" responses: - "201": - description: "Payment method created" - schema: - $ref: "#/definitions/PaymentMethod" + "204": + description: "Successful operation" "400": - description: "Invalid account id supplied" - "404": - description: "Account not found" + description: "Invalid account data supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/payments: - post: + delete: tags: - "Account" - summary: "Trigger a payment using the account external key (authorization, purchase\ - \ or credit)" + summary: "Close account" description: "" - operationId: "processPaymentByExternalKey" - consumes: - - "application/json" + operationId: "closeAccount" produces: - "application/json" parameters: - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/PaymentTransaction" - - name: "externalKey" - in: "query" + - name: "accountId" + in: "path" required: true type: "string" - - name: "paymentMethodId" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "cancelAllSubscriptions" in: "query" required: false - type: "string" - format: "uuid" - - name: "controlPluginName" + type: "boolean" + default: false + - name: "writeOffUnpaidInvoices" in: "query" required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" + type: "boolean" + default: false + - name: "itemAdjustUnpaidInvoices" in: "query" required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + type: "boolean" + default: false + - name: "removeFutureNotifications" + in: "query" + required: false + type: "boolean" + default: true - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -402,37 +389,130 @@ paths: required: false type: "string" responses: - "201": - description: "Payment transaction created successfully" - schema: - $ref: "#/definitions/Payment" + "204": + description: "Successful operation" "400": - description: "Invalid account external key supplied" - "404": - description: "Account not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" + description: "Invalid account id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/cbaRebalancing: - put: + /1.0/kb/accounts/search/{searchKey}: + get: tags: - "Account" - summary: "Rebalance account CBA" + summary: "Search accounts" description: "" - operationId: "rebalanceExistingCBAOnAccount" - consumes: + operationId: "searchAccounts" + produces: + - "application/json" + parameters: + - name: "searchKey" + in: "path" + required: true + type: "string" + pattern: ".*" + - name: "offset" + in: "query" + required: false + type: "integer" + default: 0 + format: "int64" + - name: "limit" + in: "query" + required: false + type: "integer" + default: 100 + format: "int64" + - name: "accountWithBalance" + in: "query" + required: false + type: "boolean" + default: false + - name: "accountWithBalanceAndCBA" + in: "query" + required: false + type: "boolean" + default: false + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/Account" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/accounts/pagination: + get: + tags: + - "Account" + summary: "List accounts" + description: "" + operationId: "getAccounts" + produces: - "application/json" + parameters: + - name: "offset" + in: "query" + required: false + type: "integer" + default: 0 + format: "int64" + - name: "limit" + in: "query" + required: false + type: "integer" + default: 100 + format: "int64" + - name: "accountWithBalance" + in: "query" + required: false + type: "boolean" + default: false + - name: "accountWithBalanceAndCBA" + in: "query" + required: false + type: "boolean" + default: false + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/Account" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/accounts/{accountId}/emails/{email}: + delete: + tags: + - "Account" + summary: "Delete email from account" + description: "" + operationId: "removeEmail" produces: - "application/json" parameters: @@ -442,6 +522,10 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - name: "email" + in: "path" + required: true + type: "string" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -605,13 +689,13 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/customFields: + /1.0/kb/accounts/{accountId}/bundles: get: tags: - "Account" - summary: "Retrieve account custom fields" + summary: "Retrieve bundles for account" description: "" - operationId: "getAccountCustomFields" + operationId: "getAccountBundles" produces: - "application/json" parameters: @@ -621,6 +705,14 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - name: "externalKey" + in: "query" + required: false + type: "string" + - name: "bundlesFilter" + in: "query" + required: false + type: "string" - name: "audit" in: "query" required: false @@ -636,21 +728,22 @@ paths: schema: type: "array" items: - $ref: "#/definitions/CustomField" + $ref: "#/definitions/Bundle" "400": description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + /1.0/kb/accounts/{accountId}/timeline: + get: tags: - "Account" - summary: "Add custom fields to account" + summary: "Retrieve account timeline" description: "" - operationId: "createAccountCustomFields" - consumes: - - "application/json" + operationId: "getAccountTimeline" produces: - "application/json" parameters: @@ -660,46 +753,40 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" + - name: "parallel" + in: "query" required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "boolean" + default: false + - name: "audit" + in: "query" required: false type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "201": - description: "Custom field created successfully" + "200": + description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/CustomField" + $ref: "#/definitions/AccountTimeline" "400": description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - put: + /1.0/kb/accounts/{accountId}/allCustomFields: + get: tags: - "Account" - summary: "Modify custom fields to account" + summary: "Retrieve account customFields" description: "" - operationId: "modifyAccountCustomFields" - consumes: - - "application/json" + operationId: "getAllCustomFields" produces: - "application/json" parameters: @@ -709,42 +796,61 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" + - name: "objectType" + in: "query" required: false type: "string" - - name: "X-Killbill-Comment" - in: "header" + enum: + - "ACCOUNT" + - "ACCOUNT_EMAIL" + - "BLOCKING_STATES" + - "BUNDLE" + - "CUSTOM_FIELD" + - "INVOICE" + - "PAYMENT" + - "TRANSACTION" + - "INVOICE_ITEM" + - "INVOICE_PAYMENT" + - "SUBSCRIPTION" + - "SUBSCRIPTION_EVENT" + - "SERVICE_BROADCAST" + - "PAYMENT_ATTEMPT" + - "PAYMENT_METHOD" + - "TAG" + - "TAG_DEFINITION" + - "TENANT" + - "TENANT_KVS" + - name: "audit" + in: "query" required: false type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" "400": description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - delete: + /1.0/kb/accounts/{accountId}/allTags: + get: tags: - "Account" - summary: "Remove custom fields from account" + summary: "Retrieve account tags" description: "" - operationId: "deleteAccountCustomFields" - consumes: - - "application/json" + operationId: "getAllTags" produces: - "application/json" parameters: @@ -754,42 +860,66 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "customField" + - name: "objectType" in: "query" required: false - type: "array" - items: - type: "string" - format: "uuid" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true type: "string" - - name: "X-Killbill-Reason" - in: "header" + enum: + - "ACCOUNT" + - "ACCOUNT_EMAIL" + - "BLOCKING_STATES" + - "BUNDLE" + - "CUSTOM_FIELD" + - "INVOICE" + - "PAYMENT" + - "TRANSACTION" + - "INVOICE_ITEM" + - "INVOICE_PAYMENT" + - "SUBSCRIPTION" + - "SUBSCRIPTION_EVENT" + - "SERVICE_BROADCAST" + - "PAYMENT_ATTEMPT" + - "PAYMENT_METHOD" + - "TAG" + - "TAG_DEFINITION" + - "TENANT" + - "TENANT_KVS" + - name: "includedDeleted" + in: "query" required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "boolean" + default: false + - name: "audit" + in: "query" required: false type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/Tag" "400": description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/block: + /1.0/kb/accounts/{accountId}/overdue: get: tags: - "Account" - summary: "Retrieve blocking states for account" + summary: "Retrieve overdue state for account" description: "" - operationId: "getBlockingStates" + operationId: "getOverdueAccount" produces: - "application/json" parameters: @@ -799,18 +929,46 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "blockingStateTypes" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/OverdueState" + "400": + description: "Invalid account id supplied" + "404": + description: "Account not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/accounts/{accountId}/invoicePayments: + get: + tags: + - "Account" + summary: "Retrieve account invoice payments" + description: "" + operationId: "getInvoicePayments" + produces: + - "application/json" + parameters: + - name: "accountId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "withPluginInfo" in: "query" required: false - type: "array" - items: - type: "string" - enum: - - "SUBSCRIPTION" - - "SUBSCRIPTION_BUNDLE" - - "ACCOUNT" - collectionFormat: "multi" - - name: "blockingStateSvcs" + type: "boolean" + default: false + - name: "withAttempts" + in: "query" + required: false + type: "boolean" + default: false + - name: "pluginProperty" in: "query" required: false type: "array" @@ -832,9 +990,11 @@ paths: schema: type: "array" items: - $ref: "#/definitions/BlockingState" + $ref: "#/definitions/InvoicePayment" "400": description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -842,11 +1002,13 @@ paths: post: tags: - "Account" - summary: "Block an account" + summary: "Trigger a payment for all unpaid invoices" description: "" - operationId: "addAccountBlockingState" + operationId: "payAllInvoices" consumes: - "application/json" + produces: + - "application/json" parameters: - name: "accountId" in: "path" @@ -854,12 +1016,21 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/BlockingState" - - name: "requestedDate" + - name: "paymentMethodId" + in: "query" + required: false + type: "string" + format: "uuid" + - name: "externalPayment" + in: "query" + required: false + type: "boolean" + default: false + - name: "paymentAmount" + in: "query" + required: false + type: "number" + - name: "targetDate" in: "query" required: false type: "string" @@ -885,26 +1056,26 @@ paths: type: "string" responses: "201": - description: "Blocking state created successfully" + description: "Successful operation" schema: type: "array" items: - $ref: "#/definitions/BlockingState" - "400": - description: "Invalid account id supplied" + $ref: "#/definitions/Invoice" + "204": + description: "Nothing to pay" "404": - description: "Account not found" + description: "Invalid account id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/auditLogs: + /1.0/kb/accounts/{accountId}/payments: get: tags: - "Account" - summary: "Retrieve audit logs by account id" + summary: "Retrieve account payments" description: "" - operationId: "getAccountAuditLogs" + operationId: "getPaymentsForAccount" produces: - "application/json" parameters: @@ -914,54 +1085,51 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - name: "withAttempts" + in: "query" + required: false + type: "boolean" + default: false + - name: "withPluginInfo" + in: "query" + required: false + type: "boolean" + default: false + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: "200": description: "successful operation" schema: type: "array" items: - $ref: "#/definitions/AuditLog" - "404": - description: "Account not found" + $ref: "#/definitions/Payment" + "400": + description: "Invalid account id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/emails: - get: + post: tags: - "Account" - summary: "Retrieve an account emails" + summary: "Trigger a payment (authorization, purchase or credit)" description: "" - operationId: "getEmails" - produces: - - "application/json" - parameters: - - name: "accountId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/AccountEmail" - "400": - description: "Invalid account id supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - post: - tags: - - "Account" - summary: "Add account email" - description: "" - operationId: "addEmail" + operationId: "processPayment" consumes: - "application/json" produces: @@ -977,7 +1145,26 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/AccountEmail" + $ref: "#/definitions/PaymentTransaction" + - name: "paymentMethodId" + in: "query" + required: false + type: "string" + format: "uuid" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -992,43 +1179,60 @@ paths: type: "string" responses: "201": - description: "Email created successfully" + description: "Payment transaction created successfully" schema: - type: "array" - items: - $ref: "#/definitions/AccountEmail" + $ref: "#/definitions/Payment" "400": description: "Invalid account id supplied" "404": description: "Account not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts: + /1.0/kb/accounts/{accountId}/paymentMethods: get: tags: - "Account" - summary: "Retrieve an account by external key" + summary: "Retrieve account payment methods" description: "" - operationId: "getAccountByKey" + operationId: "getPaymentMethodsForAccount" produces: - "application/json" parameters: - - name: "externalKey" - in: "query" + - name: "accountId" + in: "path" required: true type: "string" - - name: "accountWithBalance" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "withPluginInfo" in: "query" required: false type: "boolean" default: false - - name: "accountWithBalanceAndCBA" + - name: "includedDeleted" in: "query" required: false type: "boolean" default: false + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "audit" in: "query" required: false @@ -1042,7 +1246,11 @@ paths: "200": description: "successful operation" schema: - $ref: "#/definitions/Account" + type: "array" + items: + $ref: "#/definitions/PaymentMethod" + "400": + description: "Invalid account id supplied" "404": description: "Account not found" security: @@ -1052,19 +1260,49 @@ paths: post: tags: - "Account" - summary: "Create account" + summary: "Add a payment method" description: "" - operationId: "createAccount" + operationId: "createPaymentMethod" consumes: - "application/json" produces: - "application/json" parameters: + - name: "accountId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/Account" + $ref: "#/definitions/PaymentMethod" + - name: "isDefault" + in: "query" + required: false + type: "boolean" + default: false + - name: "payAllUnpaidInvoices" + in: "query" + required: false + type: "boolean" + default: false + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -1079,52 +1317,33 @@ paths: type: "string" responses: "201": - description: "Account created successfully" + description: "Payment method created" schema: - $ref: "#/definitions/Account" + $ref: "#/definitions/PaymentMethod" "400": - description: "Invalid account data supplied" + description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/search/{searchKey}: + /1.0/kb/accounts/{accountId}/customFields: get: tags: - "Account" - summary: "Search accounts" + summary: "Retrieve account custom fields" description: "" - operationId: "searchAccounts" + operationId: "getAccountCustomFields" produces: - "application/json" parameters: - - name: "searchKey" + - name: "accountId" in: "path" required: true type: "string" - pattern: ".*" - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" - required: false - type: "integer" - default: 100 - format: "int64" - - name: "accountWithBalance" - in: "query" - required: false - type: "boolean" - default: false - - name: "accountWithBalanceAndCBA" - in: "query" - required: false - type: "boolean" - default: false + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - name: "audit" in: "query" required: false @@ -1140,18 +1359,21 @@ paths: schema: type: "array" items: - $ref: "#/definitions/Account" + $ref: "#/definitions/CustomField" + "400": + description: "Invalid account id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/emails/{email}: - delete: + post: tags: - "Account" - summary: "Delete email from account" + summary: "Add custom fields to account" description: "" - operationId: "removeEmail" + operationId: "createAccountCustomFields" + consumes: + - "application/json" produces: - "application/json" parameters: @@ -1161,10 +1383,62 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "email" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "201": + description: "Custom field created successfully" + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" + "400": + description: "Invalid account id supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + put: + tags: + - "Account" + summary: "Modify custom fields to account" + description: "" + operationId: "modifyAccountCustomFields" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - name: "accountId" in: "path" required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -1186,112 +1460,135 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/pagination: - get: + delete: tags: - "Account" - summary: "List accounts" + summary: "Remove custom fields from account" description: "" - operationId: "getAccounts" + operationId: "deleteAccountCustomFields" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" - required: false - type: "integer" - default: 100 - format: "int64" - - name: "accountWithBalance" + - name: "accountId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "customField" in: "query" required: false - type: "boolean" - default: false - - name: "accountWithBalanceAndCBA" - in: "query" + type: "array" + items: + type: "string" + format: "uuid" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" required: false - type: "boolean" - default: false - - name: "audit" - in: "query" + type: "string" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/Account" + "204": + description: "Successful operation" + "400": + description: "Invalid account id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}: - get: + /1.0/kb/accounts/payments: + post: tags: - "Account" - summary: "Retrieve an account by id" + summary: "Trigger a payment using the account external key (authorization, purchase\ + \ or credit)" description: "" - operationId: "getAccount" + operationId: "processPaymentByExternalKey" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "accountId" - in: "path" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/PaymentTransaction" + - name: "externalKey" + in: "query" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "accountWithBalance" + - name: "paymentMethodId" in: "query" required: false - type: "boolean" - default: false - - name: "accountWithBalanceAndCBA" + type: "string" + format: "uuid" + - name: "controlPluginName" in: "query" required: false - type: "boolean" - default: false - - name: "audit" + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" in: "query" required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" + "201": + description: "Payment transaction created successfully" schema: - $ref: "#/definitions/Account" + $ref: "#/definitions/Payment" "400": - description: "Invalid account id supplied" + description: "Invalid account external key supplied" "404": description: "Account not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/accounts/{accountId}/cbaRebalancing: put: tags: - "Account" - summary: "Update account" + summary: "Rebalance account CBA" description: "" - operationId: "updateAccount" + operationId: "rebalanceExistingCBAOnAccount" consumes: - "application/json" produces: @@ -1303,16 +1600,6 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/Account" - - name: "treatNullAsReset" - in: "query" - required: false - type: "boolean" - default: false - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -1329,17 +1616,18 @@ paths: "204": description: "Successful operation" "400": - description: "Invalid account data supplied" + description: "Invalid account id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - delete: + /1.0/kb/accounts/{accountId}/auditLogsWithHistory: + get: tags: - "Account" - summary: "Close account" + summary: "Retrieve account audit logs with history by account id" description: "" - operationId: "closeAccount" + operationId: "getAccountAuditLogsWithHistory" produces: - "application/json" parameters: @@ -1349,54 +1637,26 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "cancelAllSubscriptions" - in: "query" - required: false - type: "boolean" - default: false - - name: "writeOffUnpaidInvoices" - in: "query" - required: false - type: "boolean" - default: false - - name: "itemAdjustUnpaidInvoices" - in: "query" - required: false - type: "boolean" - default: false - - name: "removeFutureNotifications" - in: "query" - required: false - type: "boolean" - default: true - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" responses: - "204": - description: "Successful operation" - "400": - description: "Invalid account id supplied" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/children: + /1.0/kb/accounts/{accountId}/invoices/pagination: get: tags: - "Account" - summary: "List children accounts" + summary: "Retrieve paginated invoices for account" description: "" - operationId: "getChildrenAccounts" + operationId: "getInvoicesForAccountPaginated" produces: - "application/json" parameters: @@ -1406,16 +1666,18 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "accountWithBalance" + - name: "offset" in: "query" required: false - type: "boolean" - default: false - - name: "accountWithBalanceAndCBA" + type: "integer" + default: 0 + format: "int64" + - name: "limit" in: "query" required: false - type: "boolean" - default: false + type: "integer" + default: 100 + format: "int64" - name: "audit" in: "query" required: false @@ -1431,22 +1693,22 @@ paths: schema: type: "array" items: - $ref: "#/definitions/Account" + $ref: "#/definitions/Invoice" "400": - description: "Invalid parent account id supplied" + description: "Invalid account id supplied" "404": - description: "Parent Account not found" + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/invoicePayments: + /1.0/kb/accounts/{accountId}/block: get: tags: - "Account" - summary: "Retrieve account invoice payments" + summary: "Retrieve blocking states for account" description: "" - operationId: "getInvoicePayments" + operationId: "getBlockingStates" produces: - "application/json" parameters: @@ -1456,17 +1718,18 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "withPluginInfo" - in: "query" - required: false - type: "boolean" - default: false - - name: "withAttempts" + - name: "blockingStateTypes" in: "query" required: false - type: "boolean" - default: false - - name: "pluginProperty" + type: "array" + items: + type: "string" + enum: + - "SUBSCRIPTION" + - "SUBSCRIPTION_BUNDLE" + - "ACCOUNT" + collectionFormat: "multi" + - name: "blockingStateSvcs" in: "query" required: false type: "array" @@ -1488,11 +1751,9 @@ paths: schema: type: "array" items: - $ref: "#/definitions/InvoicePayment" + $ref: "#/definitions/BlockingState" "400": description: "Invalid account id supplied" - "404": - description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -1500,13 +1761,11 @@ paths: post: tags: - "Account" - summary: "Trigger a payment for all unpaid invoices" + summary: "Block an account" description: "" - operationId: "payAllInvoices" + operationId: "addAccountBlockingState" consumes: - "application/json" - produces: - - "application/json" parameters: - name: "accountId" in: "path" @@ -1514,21 +1773,12 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "paymentMethodId" - in: "query" - required: false - type: "string" - format: "uuid" - - name: "externalPayment" - in: "query" - required: false - type: "boolean" - default: false - - name: "paymentAmount" - in: "query" - required: false - type: "number" - - name: "targetDate" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/BlockingState" + - name: "requestedDate" in: "query" required: false type: "string" @@ -1554,28 +1804,26 @@ paths: type: "string" responses: "201": - description: "Successful operation" + description: "Blocking state created successfully" schema: type: "array" items: - $ref: "#/definitions/Invoice" - "204": - description: "Nothing to pay" - "404": + $ref: "#/definitions/BlockingState" + "400": description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/paymentMethods/{paymentMethodId}/setDefault: - put: + /1.0/kb/accounts/{accountId}/bundles/pagination: + get: tags: - "Account" - summary: "Set the default payment method" + summary: "Retrieve paginated bundles for account" description: "" - operationId: "setDefaultPaymentMethod" - consumes: - - "application/json" + operationId: "getAccountBundlesPaginated" produces: - "application/json" parameters: @@ -1585,54 +1833,49 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "paymentMethodId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "payAllUnpaidInvoices" + - name: "offset" in: "query" required: false - type: "boolean" - default: false - - name: "pluginProperty" + type: "integer" + default: 0 + format: "int64" + - name: "limit" in: "query" required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "integer" + default: 100 + format: "int64" + - name: "audit" + in: "query" required: false type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/Bundle" "400": - description: "Invalid account id or payment method id supplied" + description: "Invalid account id supplied" "404": description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/paymentMethods/refresh: - put: + /1.0/kb/accounts/{accountId}/invoices: + get: tags: - "Account" - summary: "Refresh account payment methods" + summary: "Retrieve account invoices" description: "" - operationId: "refreshPaymentMethods" + operationId: "getInvoicesForAccount" produces: - "application/json" parameters: @@ -1642,85 +1885,40 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "pluginName" + - name: "startDate" in: "query" required: false type: "string" - - name: "pluginProperty" + format: "date" + - name: "endDate" in: "query" required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true type: "string" - - name: "X-Killbill-Reason" - in: "header" + format: "date" + - name: "withMigrationInvoices" + in: "query" required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "boolean" + default: false + - name: "unpaidInvoicesOnly" + in: "query" required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid account id supplied" - "404": - description: "Account not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/allTags: - get: - tags: - - "Account" - summary: "Retrieve account tags" - description: "" - operationId: "getAllTags" - produces: - - "application/json" - parameters: - - name: "accountId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "objectType" + type: "boolean" + default: false + - name: "includeVoidedInvoices" in: "query" required: false - type: "string" - enum: - - "ACCOUNT" - - "ACCOUNT_EMAIL" - - "BLOCKING_STATES" - - "BUNDLE" - - "CUSTOM_FIELD" - - "INVOICE" - - "PAYMENT" - - "TRANSACTION" - - "INVOICE_ITEM" - - "INVOICE_PAYMENT" - - "SUBSCRIPTION" - - "SUBSCRIPTION_EVENT" - - "SERVICE_BROADCAST" - - "PAYMENT_ATTEMPT" - - "PAYMENT_METHOD" - - "TAG" - - "TAG_DEFINITION" - - "TENANT" - - "TENANT_KVS" - - name: "includedDeleted" + type: "boolean" + default: false + - name: "includeInvoiceComponents" in: "query" required: false type: "boolean" default: false + - name: "invoicesFilter" + in: "query" + required: false + type: "string" - name: "audit" in: "query" required: false @@ -1736,7 +1934,7 @@ paths: schema: type: "array" items: - $ref: "#/definitions/Tag" + $ref: "#/definitions/Invoice" "400": description: "Invalid account id supplied" "404": @@ -1745,61 +1943,42 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/bundles: + /1.0/kb/accounts/block/{blockingId}/auditLogsWithHistory: get: tags: - "Account" - summary: "Retrieve bundles for account" + summary: "Retrieve blocking state audit logs with history by id" description: "" - operationId: "getAccountBundles" + operationId: "getBlockingStateAuditLogsWithHistory" produces: - "application/json" parameters: - - name: "accountId" + - name: "blockingId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "externalKey" - in: "query" - required: false - type: "string" - - name: "bundlesFilter" - in: "query" - required: false - type: "string" - - name: "audit" - in: "query" - required: false - type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: "200": description: "successful operation" schema: type: "array" items: - $ref: "#/definitions/Bundle" - "400": - description: "Invalid account id supplied" + $ref: "#/definitions/AuditLog" "404": - description: "Account not found" + description: "Blocking state not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/bundles/pagination: + /1.0/kb/accounts/{accountId}/emails/{accountEmailId}/auditLogsWithHistory: get: tags: - "Account" - summary: "Retrieve paginated bundles for account" + summary: "Retrieve account email audit logs with history by id" description: "" - operationId: "getAccountBundlesPaginated" + operationId: "getAccountEmailAuditLogsWithHistory" produces: - "application/json" parameters: @@ -1809,49 +1988,32 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" - required: false - type: "integer" - default: 100 - format: "int64" - - name: "audit" - in: "query" - required: false + - name: "accountEmailId" + in: "path" + required: true type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" responses: "200": description: "successful operation" schema: type: "array" items: - $ref: "#/definitions/Bundle" - "400": - description: "Invalid account id supplied" + $ref: "#/definitions/AuditLog" "404": description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/timeline: + /1.0/kb/accounts/{accountId}/auditLogs: get: tags: - "Account" - summary: "Retrieve account timeline" + summary: "Retrieve audit logs by account id" description: "" - operationId: "getAccountTimeline" + operationId: "getAccountAuditLogs" produces: - "application/json" parameters: @@ -1861,207 +2023,67 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "parallel" - in: "query" - required: false - type: "boolean" - default: false - - name: "audit" - in: "query" - required: false - type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" - responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/AccountTimeline" - "400": - description: "Invalid account id supplied" - "404": - description: "Account not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/allCustomFields: - get: - tags: - - "Account" - summary: "Retrieve account customFields" - description: "" - operationId: "getAllCustomFields" - produces: - - "application/json" - parameters: - - name: "accountId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "objectType" - in: "query" - required: false - type: "string" - enum: - - "ACCOUNT" - - "ACCOUNT_EMAIL" - - "BLOCKING_STATES" - - "BUNDLE" - - "CUSTOM_FIELD" - - "INVOICE" - - "PAYMENT" - - "TRANSACTION" - - "INVOICE_ITEM" - - "INVOICE_PAYMENT" - - "SUBSCRIPTION" - - "SUBSCRIPTION_EVENT" - - "SERVICE_BROADCAST" - - "PAYMENT_ATTEMPT" - - "PAYMENT_METHOD" - - "TAG" - - "TAG_DEFINITION" - - "TENANT" - - "TENANT_KVS" - - name: "audit" - in: "query" - required: false - type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: "200": description: "successful operation" schema: type: "array" items: - $ref: "#/definitions/CustomField" - "400": - description: "Invalid account id supplied" + $ref: "#/definitions/AuditLog" "404": description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/invoices: - get: + /1.0/kb/accounts/{childAccountId}/transferCredit: + put: tags: - "Account" - summary: "Retrieve account invoices" + summary: "Move a given child credit to the parent level" description: "" - operationId: "getInvoicesForAccount" + operationId: "transferChildCreditToParent" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "accountId" + - name: "childAccountId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "startDate" - in: "query" - required: false - type: "string" - format: "date" - - name: "endDate" - in: "query" - required: false + - name: "X-Killbill-CreatedBy" + in: "header" + required: true type: "string" - format: "date" - - name: "withMigrationInvoices" - in: "query" - required: false - type: "boolean" - default: false - - name: "unpaidInvoicesOnly" - in: "query" - required: false - type: "boolean" - default: false - - name: "includeVoidedInvoices" - in: "query" - required: false - type: "boolean" - default: false - - name: "includeInvoiceComponents" - in: "query" - required: false - type: "boolean" - default: false - - name: "invoicesFilter" - in: "query" + - name: "X-Killbill-Reason" + in: "header" required: false type: "string" - - name: "audit" - in: "query" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/Invoice" - "400": - description: "Invalid account id supplied" - "404": - description: "Account not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/overdue: - get: - tags: - - "Account" - summary: "Retrieve overdue state for account" - description: "" - operationId: "getOverdueAccount" - produces: - - "application/json" - parameters: - - name: "accountId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/OverdueState" + "204": + description: "Successful operation" "400": - description: "Invalid account id supplied" + description: "Account does not have credit" "404": description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/accounts/{accountId}/payments: - get: + /1.0/kb/accounts/{accountId}/paymentMethods/refresh: + put: tags: - "Account" - summary: "Retrieve account payments" + summary: "Refresh account payment methods" description: "" - operationId: "getPaymentsForAccount" + operationId: "refreshPaymentMethods" produces: - "application/json" parameters: @@ -2071,16 +2093,10 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "withAttempts" - in: "query" - required: false - type: "boolean" - default: false - - name: "withPluginInfo" + - name: "pluginName" in: "query" required: false - type: "boolean" - default: false + type: "string" - name: "pluginProperty" in: "query" required: false @@ -2088,34 +2104,36 @@ paths: items: type: "string" collectionFormat: "multi" - - name: "audit" - in: "query" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/Payment" + "204": + description: "Successful operation" "400": description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + /1.0/kb/accounts/{accountId}/paymentMethods/{paymentMethodId}/setDefault: + put: tags: - "Account" - summary: "Trigger a payment (authorization, purchase or credit)" + summary: "Set the default payment method" description: "" - operationId: "processPayment" + operationId: "setDefaultPaymentMethod" consumes: - "application/json" produces: @@ -2127,23 +2145,17 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/PaymentTransaction" - name: "paymentMethodId" - in: "query" - required: false + in: "path" + required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "controlPluginName" + - name: "payAllUnpaidInvoices" in: "query" required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + type: "boolean" + default: false - name: "pluginProperty" in: "query" required: false @@ -2164,124 +2176,12 @@ paths: required: false type: "string" responses: - "201": - description: "Payment transaction created successfully" - schema: - $ref: "#/definitions/Payment" + "204": + description: "Successful operation" "400": - description: "Invalid account id supplied" + description: "Invalid account id or payment method id supplied" "404": description: "Account not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/admin/invoices: - post: - tags: - - "Admin" - summary: "Trigger an invoice generation for all parked accounts" - description: "" - operationId: "triggerInvoiceGenerationForParkedAccounts" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" - required: false - type: "integer" - default: 100 - format: "int64" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "200": - description: "Successful operation" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/admin/payments/{paymentId}/transactions/{paymentTransactionId}: - put: - tags: - - "Admin" - summary: "Update existing paymentTransaction and associated payment state" - description: "" - operationId: "updatePaymentTransactionState" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "paymentId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "paymentTransactionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/AdminPayment" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid account data supplied" security: - basicAuth: [] - Killbill Api Key: [] @@ -2405,6 +2305,23 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/admin/cache/tenants: + delete: + tags: + - "Admin" + summary: "Invalidates Caches per tenant level" + description: "" + operationId: "invalidatesCacheByTenant" + produces: + - "application/json" + parameters: [] + responses: + "204": + description: "Successful operation" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] /1.0/kb/admin/cache/accounts/{accountId}: delete: tags: @@ -2430,48 +2347,102 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/admin/cache/tenants: - delete: + /1.0/kb/admin/payments/{paymentId}/transactions/{paymentTransactionId}: + put: tags: - "Admin" - summary: "Invalidates Caches per tenant level" + summary: "Update existing paymentTransaction and associated payment state" description: "" - operationId: "invalidatesCacheByTenant" + operationId: "updatePaymentTransactionState" + consumes: + - "application/json" produces: - "application/json" - parameters: [] + parameters: + - name: "paymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "paymentTransactionId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/AdminPayment" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: "204": description: "Successful operation" + "400": + description: "Invalid account data supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/bundles/{bundleId}/auditLogsWithHistory: - get: + /1.0/kb/admin/invoices: + post: tags: - - "Bundle" - summary: "Retrieve bundle audit logs with history by id" + - "Admin" + summary: "Trigger an invoice generation for all parked accounts" description: "" - operationId: "getBundleAuditLogsWithHistory" + operationId: "triggerInvoiceGenerationForParkedAccounts" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "bundleId" - in: "path" + - name: "offset" + in: "query" + required: false + type: "integer" + default: 0 + format: "int64" + - name: "limit" + in: "query" + required: false + type: "integer" + default: 100 + format: "int64" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" - "404": - description: "Subscription bundle not found" + description: "Successful operation" security: - basicAuth: [] - Killbill Api Key: [] @@ -2733,22 +2704,28 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/bundles/{bundleId}/customFields: + /1.0/kb/bundles/pagination: get: tags: - "Bundle" - summary: "Retrieve bundle custom fields" + summary: "List bundles" description: "" - operationId: "getBundleCustomFields" + operationId: "getBundles" produces: - "application/json" parameters: - - name: "bundleId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + - name: "offset" + in: "query" + required: false + type: "integer" + default: 0 + format: "int64" + - name: "limit" + in: "query" + required: false + type: "integer" + default: 100 + format: "int64" - name: "audit" in: "query" required: false @@ -2764,175 +2741,30 @@ paths: schema: type: "array" items: - $ref: "#/definitions/CustomField" - "400": - description: "Invalid bundle id supplied" + $ref: "#/definitions/Bundle" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + /1.0/kb/bundles: + get: tags: - "Bundle" - summary: "Add custom fields to bundle" + summary: "Retrieve a bundle by external key" description: "" - operationId: "createBundleCustomFields" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "bundleId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "201": - description: "Custom field created successfully" - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - "400": - description: "Invalid bundle id supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - put: - tags: - - "Bundle" - summary: "Modify custom fields to bundle" - description: "" - operationId: "modifyBundleCustomFields" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "bundleId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid bundle id supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - delete: - tags: - - "Bundle" - summary: "Remove custom fields from bundle" - description: "" - operationId: "deleteBundleCustomFields" - consumes: - - "application/json" + operationId: "getBundleByKey" produces: - "application/json" parameters: - - name: "bundleId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "customField" + - name: "externalKey" in: "query" - required: false - type: "array" - items: - type: "string" - format: "uuid" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" required: true type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid bundle id supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/bundles/pagination: - get: - tags: - - "Bundle" - summary: "List bundles" - description: "" - operationId: "getBundles" - produces: - - "application/json" - parameters: - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" + - name: "includedDeleted" in: "query" required: false - type: "integer" - default: 100 - format: "int64" + type: "boolean" + default: false - name: "audit" in: "query" required: false @@ -2949,19 +2781,23 @@ paths: type: "array" items: $ref: "#/definitions/Bundle" + "404": + description: "Bundle not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/bundles/{bundleId}/block: - post: + /1.0/kb/bundles/{bundleId}/pause: + put: tags: - "Bundle" - summary: "Block a bundle" + summary: "Pause a bundle" description: "" - operationId: "addBundleBlockingState" + operationId: "pauseBundle" consumes: - "application/json" + produces: + - "application/json" parameters: - name: "bundleId" in: "path" @@ -2969,11 +2805,6 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/BlockingState" - name: "requestedDate" in: "query" required: false @@ -2999,12 +2830,8 @@ paths: required: false type: "string" responses: - "201": - description: "Blocking state created successfully" - schema: - type: "array" - items: - $ref: "#/definitions/BlockingState" + "204": + description: "Successful operation" "400": description: "Invalid bundle id supplied" "404": @@ -3013,25 +2840,33 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/bundles: + /1.0/kb/bundles/search/{searchKey}: get: tags: - "Bundle" - summary: "Retrieve a bundle by external key" + summary: "Search bundles" description: "" - operationId: "getBundleByKey" + operationId: "searchBundles" produces: - "application/json" parameters: - - name: "externalKey" - in: "query" + - name: "searchKey" + in: "path" required: true type: "string" - - name: "includedDeleted" + pattern: ".*" + - name: "offset" in: "query" required: false - type: "boolean" - default: false + type: "integer" + default: 0 + format: "int64" + - name: "limit" + in: "query" + required: false + type: "integer" + default: 100 + format: "int64" - name: "audit" in: "query" required: false @@ -3048,19 +2883,17 @@ paths: type: "array" items: $ref: "#/definitions/Bundle" - "404": - description: "Bundle not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/bundles/{bundleId}/pause: + /1.0/kb/bundles/{bundleId}/resume: put: tags: - "Bundle" - summary: "Pause a bundle" + summary: "Resume a bundle" description: "" - operationId: "pauseBundle" + operationId: "resumeBundle" consumes: - "application/json" produces: @@ -3151,17 +2984,15 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/bundles/{bundleId}/resume: - put: + /1.0/kb/bundles/{bundleId}/block: + post: tags: - "Bundle" - summary: "Resume a bundle" + summary: "Block a bundle" description: "" - operationId: "resumeBundle" + operationId: "addBundleBlockingState" consumes: - "application/json" - produces: - - "application/json" parameters: - name: "bundleId" in: "path" @@ -3169,6 +3000,11 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/BlockingState" - name: "requestedDate" in: "query" required: false @@ -3194,8 +3030,12 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" + "201": + description: "Blocking state created successfully" + schema: + type: "array" + items: + $ref: "#/definitions/BlockingState" "400": description: "Invalid bundle id supplied" "404": @@ -3204,33 +3044,22 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/bundles/search/{searchKey}: + /1.0/kb/bundles/{bundleId}/customFields: get: tags: - "Bundle" - summary: "Search bundles" + summary: "Retrieve bundle custom fields" description: "" - operationId: "searchBundles" + operationId: "getBundleCustomFields" produces: - "application/json" parameters: - - name: "searchKey" + - name: "bundleId" in: "path" required: true type: "string" - pattern: ".*" - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" - required: false - type: "integer" - default: 100 - format: "int64" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - name: "audit" in: "query" required: false @@ -3246,161 +3075,212 @@ paths: schema: type: "array" items: - $ref: "#/definitions/Bundle" + $ref: "#/definitions/CustomField" + "400": + description: "Invalid bundle id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/phase: - get: + post: tags: - - "Catalog" - summary: "Retrieve phase for a given subscription and date" + - "Bundle" + summary: "Add custom fields to bundle" description: "" - operationId: "getPhaseForSubscriptionAndDate" + operationId: "createBundleCustomFields" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "subscriptionId" - in: "query" - required: false + - name: "bundleId" + in: "path" + required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "requestedDate" - in: "query" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - format: "date" responses: - "200": - description: "successful operation" + "201": + description: "Custom field created successfully" schema: - $ref: "#/definitions/Phase" + type: "array" + items: + $ref: "#/definitions/CustomField" + "400": + description: "Invalid bundle id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/plan: - get: + put: tags: - - "Catalog" - summary: "Retrieve plan for a given subscription and date" + - "Bundle" + summary: "Modify custom fields to bundle" description: "" - operationId: "getPlanForSubscriptionAndDate" + operationId: "modifyBundleCustomFields" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "subscriptionId" - in: "query" - required: false + - name: "bundleId" + in: "path" + required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "requestedDate" - in: "query" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - format: "date" responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/Plan" + "204": + description: "Successful operation" + "400": + description: "Invalid bundle id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/priceList: - get: + delete: tags: - - "Catalog" - summary: "Retrieve priceList for a given subscription and date" + - "Bundle" + summary: "Remove custom fields from bundle" description: "" - operationId: "getPriceListForSubscriptionAndDate" + operationId: "deleteBundleCustomFields" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "subscriptionId" - in: "query" - required: false + - name: "bundleId" + in: "path" + required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "requestedDate" + - name: "customField" in: "query" required: false + type: "array" + items: + type: "string" + format: "uuid" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false type: "string" - format: "date" responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/PriceList" + "204": + description: "Successful operation" + "400": + description: "Invalid bundle id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/product: + /1.0/kb/bundles/{bundleId}/auditLogsWithHistory: get: tags: - - "Catalog" - summary: "Retrieve product for a given subscription and date" + - "Bundle" + summary: "Retrieve bundle audit logs with history by id" description: "" - operationId: "getProductForSubscriptionAndDate" + operationId: "getBundleAuditLogsWithHistory" produces: - "application/json" parameters: - - name: "subscriptionId" - in: "query" - required: false + - name: "bundleId" + in: "path" + required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "requestedDate" - in: "query" - required: false - type: "string" - format: "date" responses: "200": description: "successful operation" schema: - $ref: "#/definitions/Product" + type: "array" + items: + $ref: "#/definitions/AuditLog" + "404": + description: "Subscription bundle not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/simplePlan: - post: + /1.0/kb/catalog/availableAddons: + get: tags: - "Catalog" - summary: "Add a simple plan entry in the current version of the catalog" + summary: "Retrieve available add-ons for a given product" description: "" - operationId: "addSimplePlan" - consumes: - - "application/json" + operationId: "getAvailableAddons" produces: - "application/json" parameters: - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/SimplePlan" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true + - name: "baseProductName" + in: "query" + required: false type: "string" - - name: "X-Killbill-Reason" - in: "header" + - name: "priceListName" + in: "query" required: false type: "string" - - name: "X-Killbill-Comment" - in: "header" + - name: "accountId" + in: "query" required: false type: "string" + format: "uuid" responses: - "201": - description: "Created new plan successfully" + "200": + description: "successful operation" schema: - type: "string" + type: "array" + items: + $ref: "#/definitions/PlanDetail" security: - basicAuth: [] - Killbill Api Key: [] @@ -3462,24 +3342,16 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/availableAddons: + /1.0/kb/catalog/versions: get: tags: - "Catalog" - summary: "Retrieve available add-ons for a given product" + summary: "Retrieve a list of catalog versions" description: "" - operationId: "getAvailableAddons" + operationId: "getCatalogVersions" produces: - "application/json" parameters: - - name: "baseProductName" - in: "query" - required: false - type: "string" - - name: "priceListName" - in: "query" - required: false - type: "string" - name: "accountId" in: "query" required: false @@ -3491,21 +3363,27 @@ paths: schema: type: "array" items: - $ref: "#/definitions/PlanDetail" + type: "string" + format: "date-time" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/availableBasePlans: + /1.0/kb/catalog/xml: get: tags: - "Catalog" - summary: "Retrieve available base plans" + summary: "Retrieve the full catalog as XML" description: "" - operationId: "getAvailableBasePlans" + operationId: "getCatalogXml" produces: - - "application/json" + - "text/xml" parameters: + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date-time" - name: "accountId" in: "query" required: false @@ -3515,77 +3393,19 @@ paths: "200": description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/PlanDetail" + type: "string" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/catalog/versions: - get: + post: tags: - "Catalog" - summary: "Retrieve a list of catalog versions" + summary: "Upload the full catalog as XML" description: "" - operationId: "getCatalogVersions" - produces: - - "application/json" - parameters: - - name: "accountId" - in: "query" - required: false - type: "string" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - type: "string" - format: "date-time" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/catalog/xml: - get: - tags: - - "Catalog" - summary: "Retrieve the full catalog as XML" - description: "" - operationId: "getCatalogXml" - produces: - - "text/xml" - parameters: - - name: "requestedDate" - in: "query" - required: false - type: "string" - format: "date-time" - - name: "accountId" - in: "query" - required: false - type: "string" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "string" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - post: - tags: - - "Catalog" - summary: "Upload the full catalog as XML" - description: "" - operationId: "uploadCatalogXml" - consumes: - - "text/xml" + operationId: "uploadCatalogXml" + consumes: + - "text/xml" parameters: - in: "body" name: "body" @@ -3651,31 +3471,182 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/credits/{creditId}: + /1.0/kb/catalog/availableBasePlans: get: tags: - - "Credit" - summary: "Retrieve a credit by id" + - "Catalog" + summary: "Retrieve available base plans" description: "" - operationId: "getCredit" + operationId: "getAvailableBasePlans" produces: - "application/json" parameters: - - name: "creditId" - in: "path" - required: true + - name: "accountId" + in: "query" + required: false type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" responses: "200": description: "successful operation" schema: - $ref: "#/definitions/InvoiceItem" - "400": - description: "Invalid credit id supplied" - "404": - description: "Credit not found" + type: "array" + items: + $ref: "#/definitions/PlanDetail" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/catalog/plan: + get: + tags: + - "Catalog" + summary: "Retrieve plan for a given subscription and date" + description: "" + operationId: "getPlanForSubscriptionAndDate" + produces: + - "application/json" + parameters: + - name: "subscriptionId" + in: "query" + required: false + type: "string" + format: "uuid" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/Plan" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/catalog/priceList: + get: + tags: + - "Catalog" + summary: "Retrieve priceList for a given subscription and date" + description: "" + operationId: "getPriceListForSubscriptionAndDate" + produces: + - "application/json" + parameters: + - name: "subscriptionId" + in: "query" + required: false + type: "string" + format: "uuid" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/PriceList" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/catalog/product: + get: + tags: + - "Catalog" + summary: "Retrieve product for a given subscription and date" + description: "" + operationId: "getProductForSubscriptionAndDate" + produces: + - "application/json" + parameters: + - name: "subscriptionId" + in: "query" + required: false + type: "string" + format: "uuid" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/Product" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/catalog/phase: + get: + tags: + - "Catalog" + summary: "Retrieve phase for a given subscription and date" + description: "" + operationId: "getPhaseForSubscriptionAndDate" + produces: + - "application/json" + parameters: + - name: "subscriptionId" + in: "query" + required: false + type: "string" + format: "uuid" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/Phase" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/catalog/simplePlan: + post: + tags: + - "Catalog" + summary: "Add a simple plan entry in the current version of the catalog" + description: "" + operationId: "addSimplePlan" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/SimplePlan" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "201": + description: "Created new plan successfully" + schema: + type: "string" security: - basicAuth: [] - Killbill Api Key: [] @@ -3699,6 +3670,11 @@ paths: type: "array" items: $ref: "#/definitions/InvoiceItem" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" - name: "autoCommit" in: "query" required: false @@ -3738,17 +3714,17 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/customFields/{customFieldId}/auditLogsWithHistory: + /1.0/kb/credits/{creditId}: get: tags: - - "CustomField" - summary: "Retrieve custom field audit logs with history by id" + - "Credit" + summary: "Retrieve a credit by id" description: "" - operationId: "getCustomFieldAuditLogsWithHistory" + operationId: "getCredit" produces: - "application/json" parameters: - - name: "customFieldId" + - name: "creditId" in: "path" required: true type: "string" @@ -3758,11 +3734,11 @@ paths: "200": description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" + $ref: "#/definitions/InvoiceItem" + "400": + description: "Invalid credit id supplied" "404": - description: "Account not found" + description: "Credit not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -3821,13 +3797,42 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/customFields/pagination: + /1.0/kb/customFields/{customFieldId}/auditLogsWithHistory: get: tags: - "CustomField" - summary: "List custom fields" + summary: "Retrieve custom field audit logs with history by id" description: "" - operationId: "getCustomFields" + operationId: "getCustomFieldAuditLogsWithHistory" + produces: + - "application/json" + parameters: + - name: "customFieldId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" + "404": + description: "Account not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/customFields/pagination: + get: + tags: + - "CustomField" + summary: "List custom fields" + description: "" + operationId: "getCustomFields" produces: - "application/json" parameters: @@ -4604,100 +4609,6 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoicePayments/{paymentId}/refunds: - post: - tags: - - "InvoicePayment" - summary: "Refund a payment, and adjust the invoice if needed" - description: "" - operationId: "createRefundWithAdjustments" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "paymentId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/InvoicePaymentTransaction" - - name: "externalPayment" - in: "query" - required: false - type: "boolean" - default: false - - name: "paymentMethodId" - in: "query" - required: false - type: "string" - format: "uuid" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "201": - description: "Created refund successfully" - schema: - $ref: "#/definitions/InvoicePayment" - "400": - description: "Invalid payment id supplied" - "404": - description: "Account or payment not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/invoicePayments/{invoicePaymentId}/auditLogsWithHistory: - get: - tags: - - "InvoicePayment" - summary: "Retrieve invoice payment audit logs with history by id" - description: "" - operationId: "getInvoicePaymentAuditLogsWithHistory" - produces: - - "application/json" - parameters: - - name: "invoicePaymentId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" - "404": - description: "Invoice payment not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] /1.0/kb/invoicePayments/{paymentId}/tags: get: tags: @@ -4846,13 +4757,13 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoicePayments/{paymentId}/chargebacks: + /1.0/kb/invoicePayments/{paymentId}/refunds: post: tags: - "InvoicePayment" - summary: "Record a chargeback" + summary: "Refund a payment, and adjust the invoice if needed" description: "" - operationId: "createChargeback" + operationId: "createRefundWithAdjustments" consumes: - "application/json" produces: @@ -4869,6 +4780,16 @@ paths: required: true schema: $ref: "#/definitions/InvoicePaymentTransaction" + - name: "externalPayment" + in: "query" + required: false + type: "boolean" + default: false + - name: "paymentMethodId" + in: "query" + required: false + type: "string" + format: "uuid" - name: "pluginProperty" in: "query" required: false @@ -4890,7 +4811,7 @@ paths: type: "string" responses: "201": - description: "Created chargeback successfully" + description: "Created refund successfully" schema: $ref: "#/definitions/InvoicePayment" "400": @@ -4901,13 +4822,42 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoicePayments/{paymentId}/chargebackReversals: + /1.0/kb/invoicePayments/{invoicePaymentId}/auditLogsWithHistory: + get: + tags: + - "InvoicePayment" + summary: "Retrieve invoice payment audit logs with history by id" + description: "" + operationId: "getInvoicePaymentAuditLogsWithHistory" + produces: + - "application/json" + parameters: + - name: "invoicePaymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" + "404": + description: "Invoice payment not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/invoicePayments/{paymentId}/chargebacks: post: tags: - "InvoicePayment" - summary: "Record a chargebackReversal" + summary: "Record a chargeback" description: "" - operationId: "createChargebackReversal" + operationId: "createChargeback" consumes: - "application/json" produces: @@ -4945,7 +4895,7 @@ paths: type: "string" responses: "201": - description: "Created chargeback reversal successfully" + description: "Created chargeback successfully" schema: $ref: "#/definitions/InvoicePayment" "400": @@ -4956,31 +4906,57 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}/auditLogsWithHistory: - get: + /1.0/kb/invoicePayments/{paymentId}/chargebackReversals: + post: tags: - - "Invoice" - summary: "Retrieve invoice audit logs with history by id" + - "InvoicePayment" + summary: "Record a chargebackReversal" description: "" - operationId: "getInvoiceAuditLogsWithHistory" + operationId: "createChargebackReversal" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "invoiceId" + - name: "paymentId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/InvoicePaymentTransaction" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: - "200": - description: "successful operation" + "201": + description: "Created chargeback reversal successfully" schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" + $ref: "#/definitions/InvoicePayment" + "400": + description: "Invalid payment id supplied" "404": - description: "Invoice not found" + description: "Account or payment not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -5126,22 +5102,27 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}/customFields: + /1.0/kb/invoices/byItemId/{itemId}: get: tags: - "Invoice" - summary: "Retrieve invoice custom fields" + summary: "Retrieve an invoice by invoice item id" description: "" - operationId: "getInvoiceCustomFields" + operationId: "getInvoiceByItemId" produces: - "application/json" parameters: - - name: "invoiceId" + - name: "itemId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - name: "withChildrenItems" + in: "query" + required: false + type: "boolean" + default: false - name: "audit" in: "query" required: false @@ -5155,88 +5136,55 @@ paths: "200": description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - "400": - description: "Invalid invoice id supplied" + $ref: "#/definitions/Invoice" + "404": + description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + /1.0/kb/invoices/template: + get: tags: - "Invoice" - summary: "Add custom fields to invoice" + summary: "Retrieves the invoice template for the tenant" description: "" - operationId: "createInvoiceCustomFields" - consumes: - - "application/json" + operationId: "getInvoiceTemplate" produces: - - "application/json" - parameters: - - name: "invoiceId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" + - "text/html" + parameters: [] responses: - "201": - description: "Custom field created successfully" + "200": + description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - "400": - description: "Invalid invoice id supplied" + type: "string" + "404": + description: "Template not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - put: + post: tags: - "Invoice" - summary: "Modify custom fields to invoice" + summary: "Upload the invoice template for the tenant" description: "" - operationId: "modifyInvoiceCustomFields" + operationId: "uploadInvoiceTemplate" consumes: - - "application/json" + - "text/html" produces: - - "application/json" + - "text/html" parameters: - - name: "invoiceId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - in: "body" name: "body" required: true schema: - type: "array" - items: - $ref: "#/definitions/CustomField" + type: "string" + - name: "deleteIfExists" + in: "query" + required: false + type: "boolean" + default: false - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -5250,22 +5198,21 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" - "400": - description: "Invalid invoice id supplied" + "201": + description: "Uploaded invoice template Successfully" + schema: + type: "string" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - delete: + /1.0/kb/invoices/{invoiceId}: + get: tags: - "Invoice" - summary: "Remove custom fields from invoice" + summary: "Retrieve an invoice by id" description: "" - operationId: "deleteInvoiceCustomFields" - consumes: - - "application/json" + operationId: "getInvoice" produces: - "application/json" parameters: @@ -5275,42 +5222,39 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "customField" + - name: "withChildrenItems" in: "query" required: false - type: "array" - items: - type: "string" - format: "uuid" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "boolean" + default: false + - name: "audit" + in: "query" required: false type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + $ref: "#/definitions/Invoice" "400": description: "Invalid invoice id supplied" + "404": + description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}/commitInvoice: - put: + post: tags: - "Invoice" - summary: "Perform the invoice status transition from DRAFT to COMMITTED" + summary: "Adjust an invoice item" description: "" - operationId: "commitInvoice" + operationId: "adjustInvoiceItem" consumes: - "application/json" produces: @@ -5322,6 +5266,23 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/InvoiceItem" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -5335,32 +5296,60 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" + "201": + description: "Created adjustment Successfully" + schema: + $ref: "#/definitions/Invoice" + "400": + description: "Invalid account id, invoice id or invoice item id supplied" "404": description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}/voidInvoice: - put: + /1.0/kb/invoices/taxes/{accountId}: + post: tags: - "Invoice" - summary: "Perform the action of voiding an invoice" + summary: "Create tax items" description: "" - operationId: "voidInvoice" + operationId: "createTaxItems" consumes: - "application/json" produces: - "application/json" parameters: - - name: "invoiceId" + - name: "accountId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/InvoiceItem" + - name: "autoCommit" + in: "query" + required: false + type: "boolean" + default: false + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -5374,38 +5363,46 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" + "201": + description: "Create tax items successfully" + schema: + type: "array" + items: + $ref: "#/definitions/InvoiceItem" "400": - description: "Invalid invoice id supplied" + description: "Invalid account id supplied" "404": - description: "Invoice not found" + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/pagination: + /1.0/kb/invoices/{groupId}/group: get: tags: - "Invoice" - summary: "List invoices" + summary: "Retrieve a set of invoices by group id" description: "" - operationId: "getInvoices" + operationId: "getInvoicesGroup" produces: - "application/json" parameters: - - name: "offset" + - name: "groupId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "accountId" in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" + required: true + type: "string" + format: "uuid" + - name: "withChildrenItems" in: "query" required: false - type: "integer" - default: 100 - format: "int64" + type: "boolean" + default: false - name: "audit" in: "query" required: false @@ -5422,37 +5419,28 @@ paths: type: "array" items: $ref: "#/definitions/Invoice" + "400": + description: "Invalid group id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/search/{searchKey}: + /1.0/kb/invoices/{invoiceId}/customFields: get: tags: - "Invoice" - summary: "Search invoices" + summary: "Retrieve invoice custom fields" description: "" - operationId: "searchInvoices" + operationId: "getInvoiceCustomFields" produces: - "application/json" parameters: - - name: "searchKey" + - name: "invoiceId" in: "path" required: true type: "string" - pattern: ".*" - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" - required: false - type: "integer" - default: 100 - format: "int64" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - name: "audit" in: "query" required: false @@ -5468,61 +5456,117 @@ paths: schema: type: "array" items: - $ref: "#/definitions/Invoice" + $ref: "#/definitions/CustomField" + "400": + description: "Invalid invoice id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/byNumber/{invoiceNumber}: - get: + post: tags: - "Invoice" - summary: "Retrieve an invoice by number" + summary: "Add custom fields to invoice" description: "" - operationId: "getInvoiceByNumber" + operationId: "createInvoiceCustomFields" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "invoiceNumber" + - name: "invoiceId" in: "path" required: true - type: "integer" - pattern: "[0-9]+" - format: "int32" - - name: "withChildrenItems" - in: "query" + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" required: false - type: "boolean" - default: false - - name: "audit" - in: "query" + type: "string" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" + "201": + description: "Custom field created successfully" schema: - $ref: "#/definitions/Invoice" - "404": - description: "Invoice not found" + type: "array" + items: + $ref: "#/definitions/CustomField" + "400": + description: "Invalid invoice id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}/html: - get: + put: tags: - "Invoice" - summary: "Render an invoice as HTML" + summary: "Modify custom fields to invoice" description: "" - operationId: "getInvoiceAsHTML" + operationId: "modifyInvoiceCustomFields" + consumes: + - "application/json" produces: - - "text/html" + - "application/json" + parameters: + - name: "invoiceId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "204": + description: "Successful operation" + "400": + description: "Invalid invoice id supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + delete: + tags: + - "Invoice" + summary: "Remove custom fields from invoice" + description: "" + operationId: "deleteInvoiceCustomFields" + consumes: + - "application/json" + produces: + - "application/json" parameters: - name: "invoiceId" in: "path" @@ -5530,47 +5574,89 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - name: "customField" + in: "query" + required: false + type: "array" + items: + type: "string" + format: "uuid" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "204": + description: "Successful operation" + "400": + description: "Invalid invoice id supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/invoices/catalogTranslation/{locale}: + get: + tags: + - "Invoice" + summary: "Retrieves the catalog translation for the tenant" + description: "" + operationId: "getCatalogTranslation" + produces: + - "text/plain" + parameters: + - name: "locale" + in: "path" + required: true + type: "string" + pattern: ".*" responses: "200": description: "successful operation" schema: type: "string" + "400": + description: "Invalid locale supplied" "404": - description: "Invoice not found" + description: "Template not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/migration/{accountId}: post: tags: - "Invoice" - summary: "Create a migration invoice" + summary: "Upload the catalog translation for the tenant" description: "" - operationId: "createMigrationInvoice" + operationId: "uploadCatalogTranslation" consumes: - - "application/json" + - "text/plain" produces: - - "application/json" + - "text/plain" parameters: - - name: "accountId" + - name: "locale" in: "path" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + pattern: ".*" - in: "body" name: "body" required: true schema: - type: "array" - items: - $ref: "#/definitions/InvoiceItem" - - name: "targetDate" + type: "string" + - name: "deleteIfExists" in: "query" required: false - type: "string" - format: "date" + type: "boolean" + default: false - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -5585,22 +5671,20 @@ paths: type: "string" responses: "201": - description: "Created migration invoice successfully" + description: "Uploaded catalog translation Successfully" schema: - $ref: "#/definitions/Invoice" - "400": - description: "Invalid account id or target datetime supplied" + type: "string" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}: + /1.0/kb/invoices/{invoiceId}/payments: get: tags: - "Invoice" - summary: "Retrieve an invoice by id" + summary: "Retrieve payments associated with an invoice" description: "" - operationId: "getInvoice" + operationId: "getPaymentsForInvoice" produces: - "application/json" parameters: @@ -5610,7 +5694,12 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "withChildrenItems" + - name: "withPluginInfo" + in: "query" + required: false + type: "boolean" + default: false + - name: "withAttempts" in: "query" required: false type: "boolean" @@ -5628,7 +5717,9 @@ paths: "200": description: "successful operation" schema: - $ref: "#/definitions/Invoice" + type: "array" + items: + $ref: "#/definitions/InvoicePayment" "400": description: "Invalid invoice id supplied" "404": @@ -5640,9 +5731,9 @@ paths: post: tags: - "Invoice" - summary: "Adjust an invoice item" + summary: "Trigger a payment for invoice" description: "" - operationId: "adjustInvoiceItem" + operationId: "createInstantPayment" consumes: - "application/json" produces: @@ -5658,12 +5749,19 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/InvoiceItem" - - name: "requestedDate" + $ref: "#/definitions/InvoicePayment" + - name: "externalPayment" in: "query" required: false - type: "string" - format: "date" + type: "boolean" + default: false + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "pluginProperty" in: "query" required: false @@ -5685,104 +5783,46 @@ paths: type: "string" responses: "201": - description: "Created adjustment Successfully" + description: "Created payment Successfully" schema: - $ref: "#/definitions/Invoice" + $ref: "#/definitions/InvoicePayment" + "204": + description: "Nothing to pay for" "400": - description: "Invalid account id, invoice id or invoice item id supplied" + description: "Invalid account id or invoice id supplied" "404": - description: "Invoice not found" + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}/{invoiceItemId}/cba: - delete: + /1.0/kb/invoices/dryRun: + post: tags: - "Invoice" - summary: "Delete a CBA item" + summary: "Generate a dryRun invoice" description: "" - operationId: "deleteCBA" + operationId: "generateDryRunInvoice" consumes: - "application/json" produces: - "application/json" parameters: - - name: "invoiceId" - in: "path" + - in: "body" + name: "body" required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "invoiceItemId" - in: "path" + schema: + $ref: "#/definitions/InvoiceDryRun" + - name: "accountId" + in: "query" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "accountId" - in: "query" - required: true - type: "string" - format: "uuid" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid account id, invoice id or invoice item id supplied" - "404": - description: "Account or invoice not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/invoices/charges/{accountId}: - post: - tags: - - "Invoice" - summary: "Create external charge(s)" - description: "" - operationId: "createExternalCharges" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "accountId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/InvoiceItem" - - name: "requestedDate" + - name: "targetDate" in: "query" required: false type: "string" format: "date" - - name: "autoCommit" - in: "query" - required: false - type: "boolean" - default: false - name: "pluginProperty" in: "query" required: false @@ -5803,68 +5843,40 @@ paths: required: false type: "string" responses: - "201": - description: "Created external charge Successfully" + "200": + description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/InvoiceItem" + $ref: "#/definitions/Invoice" + "204": + description: "Nothing to generate" "400": - description: "Invalid account id supplied" - "404": - description: "Account not found" + description: "Invalid account id or target datetime supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices: - post: + /1.0/kb/invoices/manualPayTemplate/{locale}: + get: tags: - "Invoice" - summary: "Trigger an invoice generation" + summary: "Retrieves the manualPay invoice template for the tenant" description: "" - operationId: "createFutureInvoice" - consumes: - - "application/json" + operationId: "getInvoiceMPTemplate" produces: - - "application/json" + - "text/html" parameters: - - name: "accountId" - in: "query" - required: true - type: "string" - format: "uuid" - - name: "targetDate" - in: "query" - required: false - type: "string" - format: "date" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" + - name: "locale" + in: "path" required: true type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" + pattern: ".*" responses: - "201": - description: "Created invoice successfully" + "200": + description: "successful operation" schema: - $ref: "#/definitions/Invoice" - "400": - description: "Invalid account id or target datetime supplied" + type: "string" + "404": + description: "Template not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -5923,13 +5935,13 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{invoiceId}/payments: + /1.0/kb/invoices/{invoiceId}/auditLogsWithHistory: get: tags: - "Invoice" - summary: "Retrieve payments associated with an invoice" + summary: "Retrieve invoice audit logs with history by id" description: "" - operationId: "getPaymentsForInvoice" + operationId: "getInvoiceAuditLogsWithHistory" produces: - "application/json" parameters: @@ -5939,81 +5951,73 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "withPluginInfo" - in: "query" - required: false - type: "boolean" - default: false - - name: "withAttempts" - in: "query" - required: false - type: "boolean" - default: false - - name: "audit" - in: "query" - required: false - type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: "200": description: "successful operation" schema: type: "array" items: - $ref: "#/definitions/InvoicePayment" - "400": - description: "Invalid invoice id supplied" + $ref: "#/definitions/AuditLog" "404": description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/invoices/translation/{locale}: + get: + tags: + - "Invoice" + summary: "Retrieves the invoice translation for the tenant" + description: "" + operationId: "getInvoiceTranslation" + produces: + - "text/plain" + parameters: + - name: "locale" + in: "path" + required: true + type: "string" + pattern: ".*" + responses: + "200": + description: "successful operation" + schema: + type: "string" + "400": + description: "Invalid locale supplied" + "404": + description: "Translation not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] post: tags: - "Invoice" - summary: "Trigger a payment for invoice" + summary: "Upload the invoice translation for the tenant" description: "" - operationId: "createInstantPayment" + operationId: "uploadInvoiceTranslation" consumes: - - "application/json" + - "text/plain" produces: - - "application/json" + - "text/plain" parameters: - - name: "invoiceId" + - name: "locale" in: "path" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + pattern: ".*" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/InvoicePayment" - - name: "externalPayment" + type: "string" + - name: "deleteIfExists" in: "query" required: false type: "boolean" default: false - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -6028,55 +6032,79 @@ paths: type: "string" responses: "201": - description: "Created payment Successfully" + description: "Uploaded invoice translation Successfully" schema: - $ref: "#/definitions/InvoicePayment" - "204": - description: "Nothing to pay for" - "400": - description: "Invalid account id or invoice id supplied" - "404": - description: "Account not found" + type: "string" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/taxes/{accountId}: + /1.0/kb/invoices/manualPayTemplate: post: tags: - "Invoice" - summary: "Create tax items" + summary: "Upload the manualPay invoice template for the tenant" description: "" - operationId: "createTaxItems" + operationId: "uploadInvoiceMPTemplate" consumes: - - "application/json" + - "text/html" produces: - - "application/json" + - "text/html" parameters: - - name: "accountId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - in: "body" name: "body" required: true schema: - type: "array" - items: - $ref: "#/definitions/InvoiceItem" - - name: "autoCommit" + type: "string" + - name: "deleteIfExists" in: "query" required: false type: "boolean" default: false - - name: "requestedDate" - in: "query" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" required: false type: "string" - format: "date" - - name: "pluginProperty" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "200": + description: "successful operation" + schema: + type: "string" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/invoices: + post: + tags: + - "Invoice" + summary: "Trigger an invoice generation" + description: "" + operationId: "createFutureInvoice" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - name: "accountId" + in: "query" + required: true + type: "string" + format: "uuid" + - name: "targetDate" + in: "query" + required: false + type: "string" + format: "date" + - name: "pluginProperty" in: "query" required: false type: "array" @@ -6097,46 +6125,50 @@ paths: type: "string" responses: "201": - description: "Create tax items successfully" + description: "Created invoice successfully" schema: - type: "array" - items: - $ref: "#/definitions/InvoiceItem" + $ref: "#/definitions/Invoice" "400": - description: "Invalid account id supplied" - "404": - description: "Account not found" + description: "Invalid account id or target datetime supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/dryRun: + /1.0/kb/invoices/charges/{accountId}: post: tags: - "Invoice" - summary: "Generate a dryRun invoice" + summary: "Create external charge(s)" description: "" - operationId: "generateDryRunInvoice" + operationId: "createExternalCharges" consumes: - "application/json" produces: - "application/json" parameters: - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/InvoiceDryRun" - name: "accountId" - in: "query" + in: "path" required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "targetDate" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/InvoiceItem" + - name: "requestedDate" in: "query" required: false type: "string" format: "date" + - name: "autoCommit" + in: "query" + required: false + type: "boolean" + default: false - name: "pluginProperty" in: "query" required: false @@ -6157,72 +6189,77 @@ paths: required: false type: "string" responses: - "200": - description: "successful operation" + "201": + description: "Created external charge Successfully" schema: - $ref: "#/definitions/Invoice" - "204": - description: "Nothing to generate" + type: "array" + items: + $ref: "#/definitions/InvoiceItem" "400": - description: "Invalid account id or target datetime supplied" + description: "Invalid account id supplied" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/catalogTranslation/{locale}: - get: + /1.0/kb/invoices/{invoiceId}/commitInvoice: + put: tags: - "Invoice" - summary: "Retrieves the catalog translation for the tenant" + summary: "Perform the invoice status transition from DRAFT to COMMITTED" description: "" - operationId: "getCatalogTranslation" + operationId: "commitInvoice" + consumes: + - "application/json" produces: - - "text/plain" + - "application/json" parameters: - - name: "locale" + - name: "invoiceId" in: "path" required: true type: "string" - pattern: ".*" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: - "200": - description: "successful operation" - schema: - type: "string" - "400": - description: "Invalid locale supplied" + "204": + description: "Successful operation" "404": - description: "Template not found" + description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + /1.0/kb/invoices/{invoiceId}/voidInvoice: + put: tags: - "Invoice" - summary: "Upload the catalog translation for the tenant" + summary: "Perform the action of voiding an invoice" description: "" - operationId: "uploadCatalogTranslation" + operationId: "voidInvoice" consumes: - - "text/plain" + - "application/json" produces: - - "text/plain" + - "application/json" parameters: - - name: "locale" + - name: "invoiceId" in: "path" required: true type: "string" - pattern: ".*" - - in: "body" - name: "body" - required: true - schema: - type: "string" - - name: "deleteIfExists" - in: "query" - required: false - type: "boolean" - default: false + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -6236,30 +6273,32 @@ paths: required: false type: "string" responses: - "201": - description: "Uploaded catalog translation Successfully" - schema: - type: "string" + "204": + description: "Successful operation" + "400": + description: "Invalid invoice id supplied" + "404": + description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/byItemId/{itemId}: + /1.0/kb/invoices/byNumber/{invoiceNumber}: get: tags: - "Invoice" - summary: "Retrieve an invoice by invoice item id" + summary: "Retrieve an invoice by number" description: "" - operationId: "getInvoiceByItemId" + operationId: "getInvoiceByNumber" produces: - "application/json" parameters: - - name: "itemId" + - name: "invoiceNumber" in: "path" required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + type: "integer" + pattern: "[0-9]+" + format: "int32" - name: "withChildrenItems" in: "query" required: false @@ -6285,149 +6324,157 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/manualPayTemplate/{locale}: - get: + /1.0/kb/invoices/{invoiceId}/{invoiceItemId}/cba: + delete: tags: - "Invoice" - summary: "Retrieves the manualPay invoice template for the tenant" + summary: "Delete a CBA item" description: "" - operationId: "getInvoiceMPTemplate" + operationId: "deleteCBA" + consumes: + - "application/json" produces: - - "text/html" + - "application/json" parameters: - - name: "locale" + - name: "invoiceId" in: "path" required: true type: "string" - pattern: ".*" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "invoiceItemId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "accountId" + in: "query" + required: true + type: "string" + format: "uuid" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: - "200": - description: "successful operation" - schema: - type: "string" + "204": + description: "Successful operation" + "400": + description: "Invalid account id, invoice id or invoice item id supplied" "404": - description: "Template not found" + description: "Account or invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/template: + /1.0/kb/invoices/{invoiceId}/html: get: tags: - "Invoice" - summary: "Retrieves the invoice template for the tenant" + summary: "Render an invoice as HTML" description: "" - operationId: "getInvoiceTemplate" + operationId: "getInvoiceAsHTML" produces: - "text/html" - parameters: [] + parameters: + - name: "invoiceId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" responses: "200": description: "successful operation" schema: type: "string" "404": - description: "Template not found" + description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + /1.0/kb/invoices/pagination: + get: tags: - "Invoice" - summary: "Upload the invoice template for the tenant" + summary: "List invoices" description: "" - operationId: "uploadInvoiceTemplate" - consumes: - - "text/html" + operationId: "getInvoices" produces: - - "text/html" + - "application/json" parameters: - - in: "body" - name: "body" - required: true - schema: - type: "string" - - name: "deleteIfExists" + - name: "offset" in: "query" required: false - type: "boolean" - default: false - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" + type: "integer" + default: 0 + format: "int64" + - name: "limit" + in: "query" required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "integer" + default: 100 + format: "int64" + - name: "audit" + in: "query" required: false type: "string" - responses: - "201": - description: "Uploaded invoice template Successfully" - schema: - type: "string" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/invoices/translation/{locale}: - get: - tags: - - "Invoice" - summary: "Retrieves the invoice translation for the tenant" - description: "" - operationId: "getInvoiceTranslation" - produces: - - "text/plain" - parameters: - - name: "locale" - in: "path" - required: true - type: "string" - pattern: ".*" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: "200": description: "successful operation" schema: - type: "string" - "400": - description: "Invalid locale supplied" - "404": - description: "Translation not found" + type: "array" + items: + $ref: "#/definitions/Invoice" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/invoices/migration/{accountId}: post: tags: - "Invoice" - summary: "Upload the invoice translation for the tenant" + summary: "Create a migration invoice" description: "" - operationId: "uploadInvoiceTranslation" + operationId: "createMigrationInvoice" consumes: - - "text/plain" + - "application/json" produces: - - "text/plain" + - "application/json" parameters: - - name: "locale" + - name: "accountId" in: "path" required: true type: "string" - pattern: ".*" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true schema: - type: "string" - - name: "deleteIfExists" + type: "array" + items: + $ref: "#/definitions/InvoiceItem" + - name: "targetDate" in: "query" required: false - type: "boolean" - default: false + type: "string" + format: "date" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -6442,39 +6489,42 @@ paths: type: "string" responses: "201": - description: "Uploaded invoice translation Successfully" + description: "Created migration invoice successfully" schema: - type: "string" + $ref: "#/definitions/Invoice" + "400": + description: "Invalid account id or target datetime supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/invoices/{groupId}/group: + /1.0/kb/invoices/search/{searchKey}: get: tags: - "Invoice" - summary: "Retrieve a set of invoices by group id" + summary: "Search invoices" description: "" - operationId: "getInvoicesGroup" + operationId: "searchInvoices" produces: - "application/json" parameters: - - name: "groupId" + - name: "searchKey" in: "path" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "accountId" + pattern: ".*" + - name: "offset" in: "query" - required: true - type: "string" - format: "uuid" - - name: "withChildrenItems" + required: false + type: "integer" + default: 0 + format: "int64" + - name: "limit" in: "query" required: false - type: "boolean" - default: false + type: "integer" + default: 100 + format: "int64" - name: "audit" in: "query" required: false @@ -6491,51 +6541,6 @@ paths: type: "array" items: $ref: "#/definitions/Invoice" - "400": - description: "Invalid group id supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/invoices/manualPayTemplate: - post: - tags: - - "Invoice" - summary: "Upload the manualPay invoice template for the tenant" - description: "" - operationId: "uploadInvoiceMPTemplate" - consumes: - - "text/html" - produces: - - "text/html" - parameters: - - in: "body" - name: "body" - required: true - schema: - type: "string" - - name: "deleteIfExists" - in: "query" - required: false - type: "boolean" - default: false - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "200": - description: "successful operation" - schema: - type: "string" security: - basicAuth: [] - Killbill Api Key: [] @@ -6599,21 +6604,21 @@ paths: description: "Invalid node command supplied" security: - basicAuth: [] - /1.0/kb/overdue: + /1.0/kb/overdue/xml: get: tags: - "Overdue" - summary: "Retrieve the overdue config as JSON" + summary: "Retrieve the overdue config as XML" description: "" - operationId: "getOverdueConfigJson" + operationId: "getOverdueConfigXml" produces: - - "application/json" + - "text/xml" parameters: [] responses: "200": description: "successful operation" schema: - $ref: "#/definitions/Overdue" + type: "string" security: - basicAuth: [] - Killbill Api Key: [] @@ -6621,19 +6626,17 @@ paths: post: tags: - "Overdue" - summary: "Upload the full overdue config as JSON" + summary: "Upload the full overdue config as XML" description: "" - operationId: "uploadOverdueConfigJson" + operationId: "uploadOverdueConfigXml" consumes: - - "application/json" - produces: - - "application/json" + - "text/xml" parameters: - in: "body" name: "body" required: true schema: - $ref: "#/definitions/Overdue" + type: "string" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -6650,28 +6653,28 @@ paths: "201": description: "Successfully uploaded overdue config" schema: - $ref: "#/definitions/Overdue" + type: "string" "400": description: "Invalid node command supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/overdue/xml: + /1.0/kb/overdue: get: tags: - "Overdue" - summary: "Retrieve the overdue config as XML" + summary: "Retrieve the overdue config as JSON" description: "" - operationId: "getOverdueConfigXml" + operationId: "getOverdueConfigJson" produces: - - "text/xml" + - "application/json" parameters: [] responses: "200": description: "successful operation" schema: - type: "string" + $ref: "#/definitions/Overdue" security: - basicAuth: [] - Killbill Api Key: [] @@ -6679,17 +6682,19 @@ paths: post: tags: - "Overdue" - summary: "Upload the full overdue config as XML" + summary: "Upload the full overdue config as JSON" description: "" - operationId: "uploadOverdueConfigXml" + operationId: "uploadOverdueConfigJson" consumes: - - "text/xml" + - "application/json" + produces: + - "application/json" parameters: - in: "body" name: "body" required: true schema: - type: "string" + $ref: "#/definitions/Overdue" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -6706,41 +6711,30 @@ paths: "201": description: "Successfully uploaded overdue config" schema: - type: "string" + $ref: "#/definitions/Overdue" "400": description: "Invalid node command supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/paymentGateways/hosted/form/{accountId}: + /1.0/kb/paymentGateways/hosted/form: post: tags: - "PaymentGateway" - summary: "Generate form data to redirect the customer to the gateway" + summary: "Combo API to generate form data to redirect the customer to the gateway" description: "" - operationId: "buildFormDescriptor" + operationId: "buildComboFormDescriptor" consumes: - "application/json" produces: - "application/json" parameters: - - name: "accountId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/HostedPaymentPageFields" - - name: "paymentMethodId" - in: "query" - required: false - type: "string" - format: "uuid" + $ref: "#/definitions/ComboHostedPaymentPage" - name: "controlPluginName" in: "query" required: false @@ -6772,34 +6766,40 @@ paths: description: "successful operation" schema: $ref: "#/definitions/HostedPaymentPageFormDescriptor" - "404": - description: "Account not found" + "400": + description: "Invalid data for Account or PaymentMethod" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/paymentGateways/notification/{pluginName}: + /1.0/kb/paymentGateways/hosted/form/{accountId}: post: tags: - "PaymentGateway" - summary: "Process a gateway notification" - description: "The response is built by the appropriate plugin" - operationId: "processNotification" + summary: "Generate form data to redirect the customer to the gateway" + description: "" + operationId: "buildFormDescriptor" consumes: - - "*/*" + - "application/json" produces: - "application/json" parameters: - - name: "pluginName" + - name: "accountId" in: "path" required: true type: "string" - pattern: ".*" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true schema: - type: "string" + $ref: "#/definitions/HostedPaymentPageFields" + - name: "paymentMethodId" + in: "query" + required: false + type: "string" + format: "uuid" - name: "controlPluginName" in: "query" required: false @@ -6828,28 +6828,37 @@ paths: type: "string" responses: "200": - description: "Successful" - security: + description: "successful operation" + schema: + $ref: "#/definitions/HostedPaymentPageFormDescriptor" + "404": + description: "Account not found" + security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/paymentGateways/hosted/form: + /1.0/kb/paymentGateways/notification/{pluginName}: post: tags: - "PaymentGateway" - summary: "Combo API to generate form data to redirect the customer to the gateway" - description: "" - operationId: "buildComboFormDescriptor" + summary: "Process a gateway notification" + description: "The response is built by the appropriate plugin" + operationId: "processNotification" consumes: - - "application/json" + - "*/*" produces: - "application/json" parameters: + - name: "pluginName" + in: "path" + required: true + type: "string" + pattern: ".*" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/ComboHostedPaymentPage" + type: "string" - name: "controlPluginName" in: "query" required: false @@ -6876,13 +6885,170 @@ paths: in: "header" required: false type: "string" + responses: + "200": + description: "Successful" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/paymentMethods/{paymentMethodId}: + get: + tags: + - "PaymentMethod" + summary: "Retrieve a payment method by id" + description: "" + operationId: "getPaymentMethod" + produces: + - "application/json" + parameters: + - name: "paymentMethodId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "includedDeleted" + in: "query" + required: false + type: "boolean" + default: false + - name: "withPluginInfo" + in: "query" + required: false + type: "boolean" + default: false + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: "200": description: "successful operation" schema: - $ref: "#/definitions/HostedPaymentPageFormDescriptor" + $ref: "#/definitions/PaymentMethod" "400": - description: "Invalid data for Account or PaymentMethod" + description: "Invalid paymentMethodId supplied" + "404": + description: "Account or payment method not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + delete: + tags: + - "PaymentMethod" + summary: "Delete a payment method" + description: "" + operationId: "deletePaymentMethod" + produces: + - "application/json" + parameters: + - name: "paymentMethodId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "deleteDefaultPmWithAutoPayOff" + in: "query" + required: false + type: "boolean" + default: false + - name: "forceDefaultPmDeletion" + in: "query" + required: false + type: "boolean" + default: false + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "204": + description: "Successful operation" + "400": + description: "Invalid paymentMethodId supplied" + "404": + description: "Account or payment method not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/paymentMethods: + get: + tags: + - "PaymentMethod" + summary: "Retrieve a payment method by external key" + description: "" + operationId: "getPaymentMethodByKey" + produces: + - "application/json" + parameters: + - name: "externalKey" + in: "query" + required: true + type: "string" + - name: "includedDeleted" + in: "query" + required: false + type: "boolean" + default: false + - name: "withPluginInfo" + in: "query" + required: false + type: "boolean" + default: false + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/PaymentMethod" + "404": + description: "Account or payment method not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -7215,147 +7381,85 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/paymentMethods/{paymentMethodId}: - get: + /1.0/kb/payments/combo: + post: tags: - - "PaymentMethod" - summary: "Retrieve a payment method by id" + - "Payment" + summary: "Combo api to create a new payment transaction on a existing (or not)\ + \ account " description: "" - operationId: "getPaymentMethod" + operationId: "createComboPayment" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "paymentMethodId" - in: "path" + - in: "body" + name: "body" required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "includedDeleted" - in: "query" - required: false - type: "boolean" - default: false - - name: "withPluginInfo" - in: "query" - required: false - type: "boolean" - default: false - - name: "pluginProperty" + schema: + $ref: "#/definitions/ComboPaymentTransaction" + - name: "controlPluginName" in: "query" required: false type: "array" items: type: "string" collectionFormat: "multi" - - name: "audit" - in: "query" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" + "201": + description: "Payment transaction created successfully" schema: - $ref: "#/definitions/PaymentMethod" + $ref: "#/definitions/Payment" "400": - description: "Invalid paymentMethodId supplied" - "404": - description: "Account or payment method not found" + description: "Invalid data for Account or PaymentMethod" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - delete: + /1.0/kb/payments/{paymentId}/tags: + get: tags: - - "PaymentMethod" - summary: "Delete a payment method" + - "Payment" + summary: "Retrieve payment payment tags" description: "" - operationId: "deletePaymentMethod" + operationId: "getPaymentTags" produces: - "application/json" parameters: - - name: "paymentMethodId" + - name: "paymentId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "deleteDefaultPmWithAutoPayOff" - in: "query" - required: false - type: "boolean" - default: false - - name: "forceDefaultPmDeletion" - in: "query" - required: false - type: "boolean" - default: false - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid paymentMethodId supplied" - "404": - description: "Account or payment method not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/paymentMethods: - get: - tags: - - "PaymentMethod" - summary: "Retrieve a payment method by external key" - description: "" - operationId: "getPaymentMethodByKey" - produces: - - "application/json" - parameters: - - name: "externalKey" - in: "query" - required: true - type: "string" - name: "includedDeleted" in: "query" required: false type: "boolean" default: false - - name: "withPluginInfo" - in: "query" - required: false - type: "boolean" - default: false - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - name: "audit" in: "query" required: false @@ -7369,29 +7473,42 @@ paths: "200": description: "successful operation" schema: - $ref: "#/definitions/PaymentMethod" + type: "array" + items: + $ref: "#/definitions/Tag" + "400": + description: "Invalid payment id supplied" "404": - description: "Account or payment method not found" + description: "Invoice not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/cancelScheduledPaymentTransaction: - delete: + post: tags: - "Payment" - summary: "Cancels a scheduled payment attempt retry" + summary: "Add tags to payment payment" description: "" - operationId: "cancelScheduledPaymentTransactionByExternalKey" + operationId: "createPaymentTags" consumes: - "application/json" produces: - "application/json" parameters: - - name: "transactionExternalKey" - in: "query" + - name: "paymentId" + in: "path" required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + type: "string" + format: "uuid" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -7405,32 +7522,43 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" + "201": + description: "Tag created successfully" + schema: + type: "array" + items: + $ref: "#/definitions/Tag" "400": - description: "Invalid paymentTransactionExternalKey supplied" + description: "Invalid payment id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/{paymentTransactionId}/cancelScheduledPaymentTransaction: delete: tags: - "Payment" - summary: "Cancels a scheduled payment attempt retry" + summary: "Remove tags from payment payment" description: "" - operationId: "cancelScheduledPaymentTransactionById" + operationId: "deletePaymentTags" consumes: - "application/json" produces: - "application/json" parameters: - - name: "paymentTransactionId" + - name: "paymentId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + - name: "tagDef" + in: "query" + required: false + type: "array" + items: + type: "string" + format: "uuid" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -7447,21 +7575,27 @@ paths: "204": description: "Successful operation" "400": - description: "Invalid paymentTransactionId supplied" + description: "Invalid payment id supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments: + /1.0/kb/payments/{paymentId}: get: tags: - "Payment" - summary: "Retrieve a payment by external key" + summary: "Retrieve a payment by id" description: "" - operationId: "getPaymentByExternalKey" + operationId: "getPayment" produces: - "application/json" parameters: + - name: "paymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - name: "withPluginInfo" in: "query" required: false @@ -7472,10 +7606,6 @@ paths: required: false type: "boolean" default: false - - name: "externalKey" - in: "query" - required: true - type: "string" - name: "pluginProperty" in: "query" required: false @@ -7497,6 +7627,8 @@ paths: description: "successful operation" schema: $ref: "#/definitions/Payment" + "400": + description: "Invalid paymentId supplied" "404": description: "Payment not found" security: @@ -7508,12 +7640,18 @@ paths: - "Payment" summary: "Capture an existing authorization" description: "" - operationId: "captureAuthorizationByExternalKey" + operationId: "captureAuthorization" consumes: - "application/json" produces: - "application/json" parameters: + - name: "paymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true @@ -7550,6 +7688,8 @@ paths: description: "Payment transaction created successfully" schema: $ref: "#/definitions/Payment" + "400": + description: "Invalid paymentId supplied" "404": description: "Account or payment not found" "402": @@ -7571,12 +7711,18 @@ paths: - "Payment" summary: "Complete an existing transaction" description: "" - operationId: "completeTransactionByExternalKey" + operationId: "completeTransaction" consumes: - "application/json" produces: - "application/json" parameters: + - name: "paymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true @@ -7611,6 +7757,8 @@ paths: responses: "204": description: "Successful operation" + "400": + description: "Invalid paymentId supplied" "404": description: "Account or payment not found" "402": @@ -7632,12 +7780,18 @@ paths: - "Payment" summary: "Void an existing payment" description: "" - operationId: "voidPaymentByExternalKey" + operationId: "voidPayment" consumes: - "application/json" produces: - "application/json" parameters: + - name: "paymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true @@ -7672,6 +7826,8 @@ paths: responses: "204": description: "Successful operation" + "400": + description: "Invalid paymentId supplied" "404": description: "Account or payment not found" "402": @@ -7688,18 +7844,24 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/chargebacks: + /1.0/kb/payments/{paymentId}/chargebacks: post: tags: - "Payment" summary: "Record a chargeback" description: "" - operationId: "chargebackPaymentByExternalKey" + operationId: "chargebackPayment" consumes: - "application/json" produces: - "application/json" parameters: + - name: "paymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true @@ -7736,6 +7898,8 @@ paths: description: "Payment transaction created successfully" schema: $ref: "#/definitions/Payment" + "400": + description: "Invalid paymentId supplied" "404": description: "Account or payment not found" "402": @@ -7752,18 +7916,24 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/chargebackReversals: + /1.0/kb/payments/{paymentId}/refunds: post: tags: - "Payment" - summary: "Record a chargeback reversal" + summary: "Refund an existing payment" description: "" - operationId: "chargebackReversalPaymentByExternalKey" + operationId: "refundPayment" consumes: - "application/json" produces: - "application/json" parameters: + - name: "paymentId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true @@ -7800,6 +7970,8 @@ paths: description: "Payment transaction created successfully" schema: $ref: "#/definitions/Payment" + "400": + description: "Invalid paymentId supplied" "404": description: "Account or payment not found" "402": @@ -7816,134 +7988,150 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/attempts/{paymentAttemptId}/auditLogsWithHistory: + /1.0/kb/payments: get: tags: - "Payment" - summary: "Retrieve payment attempt audit logs with history by id" + summary: "Retrieve a payment by external key" description: "" - operationId: "getPaymentAttemptAuditLogsWithHistory" + operationId: "getPaymentByExternalKey" produces: - "application/json" parameters: - - name: "paymentAttemptId" - in: "path" + - name: "withPluginInfo" + in: "query" + required: false + type: "boolean" + default: false + - name: "withAttempts" + in: "query" + required: false + type: "boolean" + default: false + - name: "externalKey" + in: "query" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: "200": description: "successful operation" schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" + $ref: "#/definitions/Payment" "404": - description: "Account not found" + description: "Payment not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/{paymentId}/auditLogsWithHistory: - get: + post: tags: - "Payment" - summary: "Retrieve payment audit logs with history by id" + summary: "Capture an existing authorization" description: "" - operationId: "getPaymentAuditLogsWithHistory" - produces: + operationId: "captureAuthorizationByExternalKey" + consumes: - "application/json" - parameters: - - name: "paymentId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" - "404": - description: "Account not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/payments/{paymentId}/tags: - get: - tags: - - "Payment" - summary: "Retrieve payment payment tags" - description: "" - operationId: "getPaymentTags" produces: - "application/json" parameters: - - name: "paymentId" - in: "path" + - in: "body" + name: "body" required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "includedDeleted" + schema: + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" in: "query" required: false - type: "boolean" - default: false - - name: "audit" + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" in: "query" required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" + "201": + description: "Payment transaction created successfully" schema: - type: "array" - items: - $ref: "#/definitions/Tag" - "400": - description: "Invalid payment id supplied" + $ref: "#/definitions/Payment" "404": - description: "Invoice not found" + description: "Account or payment not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: + put: tags: - "Payment" - summary: "Add tags to payment payment" + summary: "Complete an existing transaction" description: "" - operationId: "createPaymentTags" + operationId: "completeTransactionByExternalKey" consumes: - "application/json" produces: - "application/json" parameters: - - name: "paymentId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - in: "body" name: "body" required: true schema: - type: "array" - items: - type: "string" - format: "uuid" + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -7957,14 +8145,20 @@ paths: required: false type: "string" responses: - "201": - description: "Tag created successfully" - schema: - type: "array" - items: - $ref: "#/definitions/Tag" - "400": - description: "Invalid payment id supplied" + "204": + description: "Successful operation" + "404": + description: "Account or payment not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] @@ -7972,27 +8166,32 @@ paths: delete: tags: - "Payment" - summary: "Remove tags from payment payment" + summary: "Void an existing payment" description: "" - operationId: "deletePaymentTags" + operationId: "voidPaymentByExternalKey" consumes: - "application/json" produces: - "application/json" parameters: - - name: "paymentId" - in: "path" + - in: "body" + name: "body" required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "tagDef" + schema: + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" in: "query" required: false type: "array" items: type: "string" - format: "uuid" collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" @@ -8009,56 +8208,93 @@ paths: responses: "204": description: "Successful operation" - "400": - description: "Invalid payment id supplied" + "404": + description: "Account or payment not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/{paymentId}/customFields: - get: + /1.0/kb/payments/chargebacks: + post: tags: - "Payment" - summary: "Retrieve payment custom fields" + summary: "Record a chargeback" description: "" - operationId: "getPaymentCustomFields" + operationId: "chargebackPaymentByExternalKey" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "paymentId" - in: "path" + - in: "body" + name: "body" required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "audit" + schema: + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" in: "query" required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" responses: - "200": - description: "successful operation" + "201": + description: "Payment transaction created successfully" schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - "400": - description: "Invalid payment id supplied" + $ref: "#/definitions/Payment" + "404": + description: "Account or payment not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/payments/{paymentId}/chargebackReversals: post: tags: - "Payment" - summary: "Add custom fields to payment" + summary: "Record a chargeback reversal" description: "" - operationId: "createPaymentCustomFields" + operationId: "chargebackReversalPayment" consumes: - "application/json" produces: @@ -8074,9 +8310,21 @@ paths: name: "body" required: true schema: - type: "array" - items: - $ref: "#/definitions/CustomField" + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8091,25 +8339,34 @@ paths: type: "string" responses: "201": - description: "Custom field created successfully" + description: "Payment transaction created successfully" schema: - type: "array" - items: - $ref: "#/definitions/CustomField" + $ref: "#/definitions/Payment" "400": - description: "Invalid payment id supplied" + description: "Invalid paymentId supplied" + "404": + description: "Account or payment not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - put: + /1.0/kb/payments/{paymentId}/auditLogsWithHistory: + get: tags: - "Payment" - summary: "Modify custom fields to payment" + summary: "Retrieve payment audit logs with history by id" description: "" - operationId: "modifyPaymentCustomFields" - consumes: - - "application/json" + operationId: "getPaymentAuditLogsWithHistory" produces: - "application/json" parameters: @@ -8119,58 +8376,49 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" responses: - "204": - description: "Successful operation" - "400": - description: "Invalid payment id supplied" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - delete: + /1.0/kb/payments/refunds: + post: tags: - "Payment" - summary: "Remove custom fields from payment payment" + summary: "Refund an existing payment" description: "" - operationId: "deletePaymentCustomFields" + operationId: "refundPaymentByExternalKey" consumes: - "application/json" produces: - "application/json" parameters: - - name: "paymentId" - in: "path" + - in: "body" + name: "body" required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "customField" + schema: + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" in: "query" required: false type: "array" items: type: "string" - format: "uuid" collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" @@ -8185,21 +8433,33 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" - "400": - description: "Invalid payment id supplied" + "201": + description: "Payment transaction created successfully" + schema: + $ref: "#/definitions/Payment" + "404": + description: "Account or payment not found" + "402": + description: "Transaction declined by gateway" + "422": + description: "Payment is aborted by a control plugin" + "502": + description: "Failed to submit payment transaction" + "503": + description: "Payment in unknown status, failed to receive gateway response" + "504": + description: "Payment operation timeout" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/{paymentId}: + /1.0/kb/payments/{paymentId}/customFields: get: tags: - "Payment" - summary: "Retrieve a payment by id" + summary: "Retrieve payment custom fields" description: "" - operationId: "getPayment" + operationId: "getPaymentCustomFields" produces: - "application/json" parameters: @@ -8209,23 +8469,6 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "withPluginInfo" - in: "query" - required: false - type: "boolean" - default: false - - name: "withAttempts" - in: "query" - required: false - type: "boolean" - default: false - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - name: "audit" in: "query" required: false @@ -8239,11 +8482,11 @@ paths: "200": description: "successful operation" schema: - $ref: "#/definitions/Payment" + type: "array" + items: + $ref: "#/definitions/CustomField" "400": - description: "Invalid paymentId supplied" - "404": - description: "Payment not found" + description: "Invalid payment id supplied" security: - basicAuth: [] - Killbill Api Key: [] @@ -8251,9 +8494,9 @@ paths: post: tags: - "Payment" - summary: "Capture an existing authorization" + summary: "Add custom fields to payment" description: "" - operationId: "captureAuthorization" + operationId: "createPaymentCustomFields" consumes: - "application/json" produces: @@ -8269,21 +8512,9 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + type: "array" + items: + $ref: "#/definitions/CustomField" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8298,23 +8529,13 @@ paths: type: "string" responses: "201": - description: "Payment transaction created successfully" + description: "Custom field created successfully" schema: - $ref: "#/definitions/Payment" + type: "array" + items: + $ref: "#/definitions/CustomField" "400": - description: "Invalid paymentId supplied" - "404": - description: "Account or payment not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" + description: "Invalid payment id supplied" security: - basicAuth: [] - Killbill Api Key: [] @@ -8322,9 +8543,9 @@ paths: put: tags: - "Payment" - summary: "Complete an existing transaction" + summary: "Modify custom fields to payment" description: "" - operationId: "completeTransaction" + operationId: "modifyPaymentCustomFields" consumes: - "application/json" produces: @@ -8340,21 +8561,9 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + type: "array" + items: + $ref: "#/definitions/CustomField" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8371,19 +8580,7 @@ paths: "204": description: "Successful operation" "400": - description: "Invalid paymentId supplied" - "404": - description: "Account or payment not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" + description: "Invalid payment id supplied" security: - basicAuth: [] - Killbill Api Key: [] @@ -8391,9 +8588,9 @@ paths: delete: tags: - "Payment" - summary: "Void an existing payment" + summary: "Remove custom fields from payment payment" description: "" - operationId: "voidPayment" + operationId: "deletePaymentCustomFields" consumes: - "application/json" produces: @@ -8405,24 +8602,13 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" + - name: "customField" in: "query" required: false type: "array" items: type: "string" + format: "uuid" collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" @@ -8440,10 +8626,167 @@ paths: "204": description: "Successful operation" "400": - description: "Invalid paymentId supplied" - "404": - description: "Account or payment not found" - "402": + description: "Invalid payment id supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/payments/cancelScheduledPaymentTransaction: + delete: + tags: + - "Payment" + summary: "Cancels a scheduled payment attempt retry" + description: "" + operationId: "cancelScheduledPaymentTransactionByExternalKey" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - name: "transactionExternalKey" + in: "query" + required: true + type: "string" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "204": + description: "Successful operation" + "400": + description: "Invalid paymentTransactionExternalKey supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/payments/{paymentTransactionId}/cancelScheduledPaymentTransaction: + delete: + tags: + - "Payment" + summary: "Cancels a scheduled payment attempt retry" + description: "" + operationId: "cancelScheduledPaymentTransactionById" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - name: "paymentTransactionId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "204": + description: "Successful operation" + "400": + description: "Invalid paymentTransactionId supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/payments/attempts/{paymentAttemptId}/auditLogsWithHistory: + get: + tags: + - "Payment" + summary: "Retrieve payment attempt audit logs with history by id" + description: "" + operationId: "getPaymentAttemptAuditLogsWithHistory" + produces: + - "application/json" + parameters: + - name: "paymentAttemptId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" + "404": + description: "Account not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/payments/chargebackReversals: + post: + tags: + - "Payment" + summary: "Record a chargeback reversal" + description: "" + operationId: "chargebackReversalPaymentByExternalKey" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "201": + description: "Payment transaction created successfully" + schema: + $ref: "#/definitions/Payment" + "404": + description: "Account or payment not found" + "402": description: "Transaction declined by gateway" "422": description: "Payment is aborted by a control plugin" @@ -8588,43 +8931,72 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/payments/{paymentId}/chargebacks: - post: + /1.0/kb/pluginsInfo: + get: tags: - - "Payment" - summary: "Record a chargeback" + - "PluginInfo" + summary: "Retrieve the list of registered plugins" description: "" - operationId: "chargebackPayment" + operationId: "getPluginsInfo" + produces: + - "application/json" + parameters: [] + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/PluginInfo" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/security/users/{username}/roles: + get: + tags: + - "Security" + summary: "Get roles associated to a user" + description: "" + operationId: "getUserRoles" + produces: + - "application/json" + parameters: + - name: "username" + in: "path" + required: true + type: "string" + pattern: ".*" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/UserRoles" + "404": + description: "The user does not exist or has been inactivated" + security: + - basicAuth: [] + put: + tags: + - "Security" + summary: "Update roles associated to a user" + description: "" + operationId: "updateUserRoles" consumes: - "application/json" produces: - "application/json" parameters: - - name: "paymentId" + - name: "username" in: "path" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + pattern: ".*" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + $ref: "#/definitions/UserRoles" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8638,65 +9010,27 @@ paths: required: false type: "string" responses: - "201": - description: "Payment transaction created successfully" - schema: - $ref: "#/definitions/Payment" - "400": - description: "Invalid paymentId supplied" - "404": - description: "Account or payment not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" + "204": + description: "Successful operation" security: - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/payments/{paymentId}/chargebackReversals: + /1.0/kb/security/roles: post: tags: - - "Payment" - summary: "Record a chargeback reversal" + - "Security" + summary: "Add a new role definition)" description: "" - operationId: "chargebackReversalPayment" + operationId: "addRoleDefinition" consumes: - "application/json" produces: - "application/json" parameters: - - name: "paymentId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + $ref: "#/definitions/RoleDefinition" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8711,35 +9045,17 @@ paths: type: "string" responses: "201": - description: "Payment transaction created successfully" + description: "Role definition created successfully" schema: - $ref: "#/definitions/Payment" - "400": - description: "Invalid paymentId supplied" - "404": - description: "Account or payment not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" + $ref: "#/definitions/RoleDefinition" security: - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/payments/combo: - post: + put: tags: - - "Payment" - summary: "Combo api to create a new payment transaction on a existing (or not)\ - \ account " + - "Security" + summary: "Update a new role definition)" description: "" - operationId: "createComboPayment" + operationId: "updateRoleDefinition" consumes: - "application/json" produces: @@ -8749,14 +9065,7 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/ComboPaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + $ref: "#/definitions/RoleDefinition" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8770,63 +9079,27 @@ paths: required: false type: "string" responses: - "201": - description: "Payment transaction created successfully" - schema: - $ref: "#/definitions/Payment" - "400": - description: "Invalid data for Account or PaymentMethod" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" + "204": + description: "Successful operation" security: - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/payments/{paymentId}/refunds: - post: + /1.0/kb/security/users/{username}: + delete: tags: - - "Payment" - summary: "Refund an existing payment" + - "Security" + summary: "Invalidate an existing user" description: "" - operationId: "refundPayment" + operationId: "invalidateUser" consumes: - "application/json" produces: - "application/json" parameters: - - name: "paymentId" + - name: "username" in: "path" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + pattern: ".*" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8840,35 +9113,17 @@ paths: required: false type: "string" responses: - "201": - description: "Payment transaction created successfully" - schema: - $ref: "#/definitions/Payment" - "400": - description: "Invalid paymentId supplied" - "404": - description: "Account or payment not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" + "204": + description: "Successful operation" security: - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/payments/refunds: + /1.0/kb/security/users: post: tags: - - "Payment" - summary: "Refund an existing payment" + - "Security" + summary: "Add a new user with roles (to make api requests)" description: "" - operationId: "refundPaymentByExternalKey" + operationId: "addUserRoles" consumes: - "application/json" produces: @@ -8878,21 +9133,7 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + $ref: "#/definitions/UserRoles" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -8907,77 +9148,50 @@ paths: type: "string" responses: "201": - description: "Payment transaction created successfully" - schema: - $ref: "#/definitions/Payment" - "404": - description: "Account or payment not found" - "402": - description: "Transaction declined by gateway" - "422": - description: "Payment is aborted by a control plugin" - "502": - description: "Failed to submit payment transaction" - "503": - description: "Payment in unknown status, failed to receive gateway response" - "504": - description: "Payment operation timeout" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/pluginsInfo: - get: - tags: - - "PluginInfo" - summary: "Retrieve the list of registered plugins" - description: "" - operationId: "getPluginsInfo" - produces: - - "application/json" - parameters: [] - responses: - "200": - description: "successful operation" + description: "User role created successfully" schema: - type: "array" - items: - $ref: "#/definitions/PluginInfo" + $ref: "#/definitions/UserRoles" security: - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/security/permissions: + /1.0/kb/security/roles/{role}: get: tags: - "Security" - summary: "List user permissions" + summary: "Get role definition" description: "" - operationId: "getCurrentUserPermissions" + operationId: "getRoleDefinition" produces: - "application/json" - parameters: [] + parameters: + - name: "role" + in: "path" + required: true + type: "string" + pattern: ".*" responses: "200": description: "successful operation" schema: - type: "array" - items: - type: "string" + $ref: "#/definitions/RoleDefinition" security: - basicAuth: [] - /1.0/kb/security/users: - post: + /1.0/kb/security/users/{username}/password: + put: tags: - "Security" - summary: "Add a new user with roles (to make api requests)" + summary: "Update a user password" description: "" - operationId: "addUserRoles" + operationId: "updateUserPassword" consumes: - "application/json" produces: - "application/json" parameters: + - name: "username" + in: "path" + required: true + type: "string" + pattern: ".*" - in: "body" name: "body" required: true @@ -8996,96 +9210,139 @@ paths: required: false type: "string" responses: - "201": - description: "User role created successfully" - schema: - $ref: "#/definitions/UserRoles" + "204": + description: "Successful operation" security: - basicAuth: [] - /1.0/kb/security/users/{username}/password: - put: + /1.0/kb/security/subject: + get: tags: - "Security" - summary: "Update a user password" + summary: "Get user information" description: "" - operationId: "updateUserPassword" - consumes: - - "application/json" + operationId: "getCurrentUserSubject" produces: - "application/json" - parameters: - - name: "username" - in: "path" - required: true - type: "string" - pattern: ".*" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/UserRoles" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" + parameters: [] responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + $ref: "#/definitions/Subject" security: - basicAuth: [] - /1.0/kb/security/users/{username}/roles: + /1.0/kb/security/permissions: get: tags: - "Security" - summary: "Get roles associated to a user" + summary: "List user permissions" description: "" - operationId: "getUserRoles" + operationId: "getCurrentUserPermissions" + produces: + - "application/json" + parameters: [] + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + type: "string" + security: + - basicAuth: [] + /1.0/kb/subscriptions: + get: + tags: + - "Subscription" + summary: "Retrieve a subscription by external key" + description: "" + operationId: "getSubscriptionByKey" produces: - "application/json" parameters: - - name: "username" - in: "path" + - name: "externalKey" + in: "query" required: true type: "string" - pattern: ".*" + - name: "audit" + in: "query" + required: false + type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: "200": description: "successful operation" schema: - $ref: "#/definitions/UserRoles" + $ref: "#/definitions/Subscription" "404": - description: "The user does not exist or has been inactivated" + description: "Subscription not found" security: - basicAuth: [] - put: + - Killbill Api Key: [] + - Killbill Api Secret: [] + post: tags: - - "Security" - summary: "Update roles associated to a user" + - "Subscription" + summary: "Create a subscription" description: "" - operationId: "updateUserRoles" + operationId: "createSubscription" consumes: - "application/json" produces: - "application/json" parameters: - - name: "username" - in: "path" - required: true - type: "string" - pattern: ".*" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/UserRoles" + $ref: "#/definitions/Subscription" + - name: "entitlementDate" + in: "query" + required: false + type: "string" + format: "date" + - name: "billingDate" + in: "query" + required: false + type: "string" + format: "date" + - name: "renameKeyIfExistsAndUnused" + in: "query" + required: false + type: "boolean" + default: true + - name: "migrated" + in: "query" + required: false + type: "boolean" + default: false + - name: "skipResponse" + in: "query" + required: false + type: "boolean" + default: false + - name: "callCompletion" + in: "query" + required: false + type: "boolean" + default: false + - name: "callTimeoutSec" + in: "query" + required: false + type: "integer" + default: 3 + format: "int64" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -9099,61 +9356,106 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" + "201": + description: "Subscription created successfully" + schema: + $ref: "#/definitions/Subscription" security: - basicAuth: [] - /1.0/kb/security/users/{username}: - delete: + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/subscriptions/{subscriptionId}: + get: tags: - - "Security" - summary: "Invalidate an existing user" + - "Subscription" + summary: "Retrieve a subscription by id" description: "" - operationId: "invalidateUser" - consumes: - - "application/json" + operationId: "getSubscription" produces: - "application/json" parameters: - - name: "username" + - name: "subscriptionId" in: "path" required: true type: "string" - pattern: ".*" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "audit" + in: "query" required: false type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + $ref: "#/definitions/Subscription" + "400": + description: "Invalid subscription id supplied" + "404": + description: "Subscription not found" security: - basicAuth: [] - /1.0/kb/security/roles: - post: + - Killbill Api Key: [] + - Killbill Api Secret: [] + put: tags: - - "Security" - summary: "Add a new role definition)" + - "Subscription" + summary: "Change entitlement plan" description: "" - operationId: "addRoleDefinition" + operationId: "changeSubscriptionPlan" consumes: - "application/json" produces: - "application/json" parameters: + - name: "subscriptionId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true schema: - $ref: "#/definitions/RoleDefinition" + $ref: "#/definitions/Subscription" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + - name: "callCompletion" + in: "query" + required: false + type: "boolean" + default: false + - name: "callTimeoutSec" + in: "query" + required: false + type: "integer" + default: 3 + format: "int64" + - name: "billingPolicy" + in: "query" + required: false + type: "string" + enum: + - "START_OF_TERM" + - "END_OF_TERM" + - "IMMEDIATE" + - "ILLEGAL" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -9167,93 +9469,24 @@ paths: required: false type: "string" responses: - "201": - description: "Role definition created successfully" - schema: - $ref: "#/definitions/RoleDefinition" + "204": + description: "Successful operation" + "400": + description: "Invalid subscription id supplied" + "404": + description: "Entitlement not found" security: - basicAuth: [] - put: + - Killbill Api Key: [] + - Killbill Api Secret: [] + delete: tags: - - "Security" - summary: "Update a new role definition)" + - "Subscription" + summary: "Cancel an entitlement plan" description: "" - operationId: "updateRoleDefinition" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/RoleDefinition" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - security: - - basicAuth: [] - /1.0/kb/security/roles/{role}: - get: - tags: - - "Security" - summary: "Get role definition" - description: "" - operationId: "getRoleDefinition" - produces: - - "application/json" - parameters: - - name: "role" - in: "path" - required: true - type: "string" - pattern: ".*" - responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/RoleDefinition" - security: - - basicAuth: [] - /1.0/kb/security/subject: - get: - tags: - - "Security" - summary: "Get user information" - description: "" - operationId: "getCurrentUserSubject" + operationId: "cancelSubscriptionPlan" produces: - "application/json" - parameters: [] - responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/Subject" - security: - - basicAuth: [] - /1.0/kb/subscriptions/{subscriptionId}/block: - post: - tags: - - "Subscription" - summary: "Block a subscription" - description: "" - operationId: "addSubscriptionBlockingState" - consumes: - - "application/json" parameters: - name: "subscriptionId" in: "path" @@ -9261,112 +9494,50 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/BlockingState" - name: "requestedDate" in: "query" required: false type: "string" format: "date" - - name: "pluginProperty" + - name: "callCompletion" in: "query" required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" + type: "boolean" + default: false + - name: "callTimeoutSec" + in: "query" required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" + type: "integer" + default: 5 + format: "int64" + - name: "entitlementPolicy" + in: "query" required: false type: "string" - responses: - "201": - description: "Blocking state created successfully" - schema: - type: "array" - items: - $ref: "#/definitions/BlockingState" - "400": - description: "Invalid subscription id supplied" - "404": - description: "Subscription not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/subscriptions/{subscriptionId}/customFields: - get: - tags: - - "Subscription" - summary: "Retrieve subscription custom fields" - description: "" - operationId: "getSubscriptionCustomFields" - produces: - - "application/json" - parameters: - - name: "subscriptionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "audit" + enum: + - "IMMEDIATE" + - "END_OF_TERM" + - name: "billingPolicy" in: "query" required: false type: "string" - default: "NONE" enum: - - "FULL" - - "MINIMAL" - - "NONE" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" - "400": - description: "Invalid subscription id supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - post: - tags: - - "Subscription" - summary: "Add custom fields to subscription" - description: "" - operationId: "createSubscriptionCustomFields" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "subscriptionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" + - "START_OF_TERM" + - "END_OF_TERM" + - "IMMEDIATE" + - "ILLEGAL" + - name: "useRequestedDateForBilling" + in: "query" + required: false + type: "boolean" + default: false + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -9380,22 +9551,23 @@ paths: required: false type: "string" responses: - "201": - description: "Custom field created successfully" + "204": + description: "Successful operation" "400": description: "Invalid subscription id supplied" + "404": + description: "Entitlement not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/subscriptions/{subscriptionId}/uncancel: put: tags: - "Subscription" - summary: "Modify custom fields to subscription" + summary: "Un-cancel an entitlement" description: "" - operationId: "modifySubscriptionCustomFields" - consumes: - - "application/json" + operationId: "uncancelSubscriptionPlan" produces: - "application/json" parameters: @@ -9405,13 +9577,13 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/CustomField" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -9429,18 +9601,19 @@ paths: description: "Successful operation" "400": description: "Invalid subscription id supplied" + "404": + description: "Entitlement not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - delete: + /1.0/kb/subscriptions/{subscriptionId}/undoChangePlan: + put: tags: - "Subscription" - summary: "Remove custom fields from subscription" + summary: "Undo a pending change plan on an entitlement" description: "" - operationId: "deleteSubscriptionCustomFields" - consumes: - - "application/json" + operationId: "undoChangeSubscriptionPlan" produces: - "application/json" parameters: @@ -9450,13 +9623,12 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "customField" + - name: "pluginProperty" in: "query" required: false type: "array" items: type: "string" - format: "uuid" collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" @@ -9475,17 +9647,19 @@ paths: description: "Successful operation" "400": description: "Invalid subscription id supplied" + "404": + description: "Entitlement not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions/createSubscriptionWithAddOns: + /1.0/kb/subscriptions/createSubscriptionsWithAddOns: post: tags: - "Subscription" - summary: "Create an entitlement with addOn products" + summary: "Create multiple entitlements with addOn products" description: "" - operationId: "createSubscriptionWithAddOns" + operationId: "createSubscriptionsWithAddOns" consumes: - "application/json" produces: @@ -9497,7 +9671,7 @@ paths: schema: type: "array" items: - $ref: "#/definitions/Subscription" + $ref: "#/definitions/BulkSubscriptionsBundle" - name: "entitlementDate" in: "query" required: false @@ -9508,21 +9682,21 @@ paths: required: false type: "string" format: "date" - - name: "migrated" + - name: "renameKeyIfExistsAndUnused" in: "query" required: false type: "boolean" - default: false - - name: "skipResponse" + default: true + - name: "migrated" in: "query" required: false type: "boolean" default: false - - name: "renameKeyIfExistsAndUnused" + - name: "skipResponse" in: "query" required: false type: "boolean" - default: true + default: false - name: "callCompletion" in: "query" required: false @@ -9557,73 +9731,46 @@ paths: "201": description: "Subscriptions created successfully" schema: - $ref: "#/definitions/Bundle" + type: "array" + items: + $ref: "#/definitions/Bundle" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions/createSubscriptionsWithAddOns: - post: + /1.0/kb/subscriptions/{subscriptionId}/bcd: + put: tags: - "Subscription" - summary: "Create multiple entitlements with addOn products" + summary: "Update the BCD associated to a subscription" description: "" - operationId: "createSubscriptionsWithAddOns" + operationId: "updateSubscriptionBCD" consumes: - "application/json" produces: - "application/json" parameters: + - name: "subscriptionId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - in: "body" name: "body" required: true schema: - type: "array" - items: - $ref: "#/definitions/BulkSubscriptionsBundle" - - name: "entitlementDate" - in: "query" - required: false - type: "string" - format: "date" - - name: "billingDate" + $ref: "#/definitions/Subscription" + - name: "effectiveFromDate" in: "query" required: false type: "string" format: "date" - - name: "renameKeyIfExistsAndUnused" - in: "query" - required: false - type: "boolean" - default: true - - name: "migrated" - in: "query" - required: false - type: "boolean" - default: false - - name: "skipResponse" - in: "query" - required: false - type: "boolean" - default: false - - name: "callCompletion" + - name: "forceNewBcdWithPastEffectiveDate" in: "query" required: false type: "boolean" default: false - - name: "callTimeoutSec" - in: "query" - required: false - type: "integer" - default: 3 - format: "int64" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -9637,70 +9784,10 @@ paths: required: false type: "string" responses: - "201": - description: "Subscriptions created successfully" - schema: - type: "array" - items: - $ref: "#/definitions/Bundle" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/subscriptions/{subscriptionId}/auditLogsWithHistory: - get: - tags: - - "Subscription" - summary: "Retrieve subscription audit logs with history by id" - description: "" - operationId: "getSubscriptionAuditLogsWithHistory" - produces: - - "application/json" - parameters: - - name: "subscriptionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" - "404": - description: "Subscription not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/subscriptions/events/{eventId}/auditLogsWithHistory: - get: - tags: - - "Subscription" - summary: "Retrieve subscription event audit logs with history by id" - description: "" - operationId: "getSubscriptionEventAuditLogsWithHistory" - produces: - - "application/json" - parameters: - - name: "eventId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" - "404": - description: "Subscription event not found" + "204": + description: "Successful operation" + "400": + description: "Invalid entitlement supplied" security: - basicAuth: [] - Killbill Api Key: [] @@ -9840,13 +9927,73 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions/{subscriptionId}: + /1.0/kb/subscriptions/{subscriptionId}/block: + post: + tags: + - "Subscription" + summary: "Block a subscription" + description: "" + operationId: "addSubscriptionBlockingState" + consumes: + - "application/json" + parameters: + - name: "subscriptionId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/BlockingState" + - name: "requestedDate" + in: "query" + required: false + type: "string" + format: "date" + - name: "pluginProperty" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "201": + description: "Blocking state created successfully" + schema: + type: "array" + items: + $ref: "#/definitions/BlockingState" + "400": + description: "Invalid subscription id supplied" + "404": + description: "Subscription not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/subscriptions/{subscriptionId}/customFields: get: tags: - "Subscription" - summary: "Retrieve a subscription by id" + summary: "Retrieve subscription custom fields" description: "" - operationId: "getSubscription" + operationId: "getSubscriptionCustomFields" produces: - "application/json" parameters: @@ -9869,21 +10016,21 @@ paths: "200": description: "successful operation" schema: - $ref: "#/definitions/Subscription" + type: "array" + items: + $ref: "#/definitions/CustomField" "400": description: "Invalid subscription id supplied" - "404": - description: "Subscription not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - put: + post: tags: - "Subscription" - summary: "Change entitlement plan" + summary: "Add custom fields to subscription" description: "" - operationId: "changeSubscriptionPlan" + operationId: "createSubscriptionCustomFields" consumes: - "application/json" produces: @@ -9899,39 +10046,9 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/Subscription" - - name: "requestedDate" - in: "query" - required: false - type: "string" - format: "date" - - name: "callCompletion" - in: "query" - required: false - type: "boolean" - default: false - - name: "callTimeoutSec" - in: "query" - required: false - type: "integer" - default: 3 - format: "int64" - - name: "billingPolicy" - in: "query" - required: false - type: "string" - enum: - - "START_OF_TERM" - - "END_OF_TERM" - - "IMMEDIATE" - - "ILLEGAL" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" + type: "array" + items: + $ref: "#/definitions/CustomField" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -9945,22 +10062,22 @@ paths: required: false type: "string" responses: - "204": - description: "Successful operation" + "201": + description: "Custom field created successfully" "400": description: "Invalid subscription id supplied" - "404": - description: "Entitlement not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - delete: + put: tags: - "Subscription" - summary: "Cancel an entitlement plan" + summary: "Modify custom fields to subscription" description: "" - operationId: "cancelSubscriptionPlan" + operationId: "modifySubscriptionCustomFields" + consumes: + - "application/json" produces: - "application/json" parameters: @@ -9970,49 +10087,58 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "requestedDate" - in: "query" - required: false + - in: "body" + name: "body" + required: true + schema: + type: "array" + items: + $ref: "#/definitions/CustomField" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true type: "string" - format: "date" - - name: "callCompletion" - in: "query" - required: false - type: "boolean" - default: false - - name: "callTimeoutSec" - in: "query" - required: false - type: "integer" - default: 5 - format: "int64" - - name: "entitlementPolicy" - in: "query" + - name: "X-Killbill-Reason" + in: "header" required: false type: "string" - enum: - - "IMMEDIATE" - - "END_OF_TERM" - - name: "billingPolicy" - in: "query" + - name: "X-Killbill-Comment" + in: "header" required: false type: "string" - enum: - - "START_OF_TERM" - - "END_OF_TERM" - - "IMMEDIATE" - - "ILLEGAL" - - name: "useRequestedDateForBilling" - in: "query" - required: false - type: "boolean" - default: false - - name: "pluginProperty" + responses: + "204": + description: "Successful operation" + "400": + description: "Invalid subscription id supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + delete: + tags: + - "Subscription" + summary: "Remove custom fields from subscription" + description: "" + operationId: "deleteSubscriptionCustomFields" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - name: "subscriptionId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - name: "customField" in: "query" required: false type: "array" items: type: "string" + format: "uuid" collectionFormat: "multi" - name: "X-Killbill-CreatedBy" in: "header" @@ -10031,52 +10157,71 @@ paths: description: "Successful operation" "400": description: "Invalid subscription id supplied" - "404": - description: "Entitlement not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions: - get: + /1.0/kb/subscriptions/{subscriptionId}/quantity: + put: tags: - "Subscription" - summary: "Retrieve a subscription by external key" + summary: "Update the quantity associated to a subscription" description: "" - operationId: "getSubscriptionByKey" + operationId: "updateSubscriptionQuantity" + consumes: + - "application/json" produces: - "application/json" parameters: - - name: "externalKey" - in: "query" + - name: "subscriptionId" + in: "path" required: true type: "string" - - name: "audit" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/Subscription" + - name: "effectiveFromDate" in: "query" required: false type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" + format: "date" + - name: "forceNewQuantityWithPastEffectiveDate" + in: "query" + required: false + type: "boolean" + default: false + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/Subscription" - "404": - description: "Subscription not found" + "204": + description: "Successful operation" + "400": + description: "Invalid entitlement supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/subscriptions/createSubscriptionWithAddOns: post: tags: - "Subscription" - summary: "Create a subscription" + summary: "Create an entitlement with addOn products" description: "" - operationId: "createSubscription" + operationId: "createSubscriptionWithAddOns" consumes: - "application/json" produces: @@ -10086,7 +10231,9 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/Subscription" + type: "array" + items: + $ref: "#/definitions/Subscription" - name: "entitlementDate" in: "query" required: false @@ -10097,11 +10244,6 @@ paths: required: false type: "string" format: "date" - - name: "renameKeyIfExistsAndUnused" - in: "query" - required: false - type: "boolean" - default: true - name: "migrated" in: "query" required: false @@ -10112,6 +10254,11 @@ paths: required: false type: "boolean" default: false + - name: "renameKeyIfExistsAndUnused" + in: "query" + required: false + type: "boolean" + default: true - name: "callCompletion" in: "query" required: false @@ -10144,20 +10291,20 @@ paths: type: "string" responses: "201": - description: "Subscription created successfully" + description: "Subscriptions created successfully" schema: - $ref: "#/definitions/Subscription" + $ref: "#/definitions/Bundle" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions/{subscriptionId}/uncancel: - put: + /1.0/kb/subscriptions/{subscriptionId}/auditLogsWithHistory: + get: tags: - "Subscription" - summary: "Un-cancel an entitlement" + summary: "Retrieve subscription audit logs with history by id" description: "" - operationId: "uncancelSubscriptionPlan" + operationId: "getSubscriptionAuditLogsWithHistory" produces: - "application/json" parameters: @@ -10167,169 +10314,99 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" responses: - "204": - description: "Successful operation" - "400": - description: "Invalid subscription id supplied" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" "404": - description: "Entitlement not found" + description: "Subscription not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions/{subscriptionId}/undoChangePlan: - put: + /1.0/kb/subscriptions/events/{eventId}/auditLogsWithHistory: + get: tags: - "Subscription" - summary: "Undo a pending change plan on an entitlement" + summary: "Retrieve subscription event audit logs with history by id" description: "" - operationId: "undoChangeSubscriptionPlan" + operationId: "getSubscriptionEventAuditLogsWithHistory" produces: - "application/json" parameters: - - name: "subscriptionId" + - name: "eventId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - name: "pluginProperty" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" responses: - "204": - description: "Successful operation" - "400": - description: "Invalid subscription id supplied" + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" "404": - description: "Entitlement not found" + description: "Subscription event not found" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions/{subscriptionId}/bcd: - put: + /1.0/kb/tagDefinitions/{tagDefinitionId}: + get: tags: - - "Subscription" - summary: "Update the BCD associated to a subscription" + - "TagDefinition" + summary: "Retrieve a tag definition" description: "" - operationId: "updateSubscriptionBCD" - consumes: - - "application/json" + operationId: "getTagDefinition" produces: - "application/json" parameters: - - name: "subscriptionId" + - name: "tagDefinitionId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/Subscription" - - name: "effectiveFromDate" + - name: "audit" in: "query" required: false type: "string" - format: "date" - - name: "forceNewBcdWithPastEffectiveDate" - in: "query" - required: false - type: "boolean" - default: false - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: - "204": - description: "Successful operation" + "200": + description: "successful operation" + schema: + $ref: "#/definitions/TagDefinition" "400": - description: "Invalid entitlement supplied" + description: "Invalid tagDefinitionId supplied" security: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/subscriptions/{subscriptionId}/quantity: - put: + delete: tags: - - "Subscription" - summary: "Update the quantity associated to a subscription" + - "TagDefinition" + summary: "Delete a tag definition" description: "" - operationId: "updateSubscriptionQuantity" - consumes: - - "application/json" + operationId: "deleteTagDefinition" produces: - "application/json" parameters: - - name: "subscriptionId" + - name: "tagDefinitionId" in: "path" required: true type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/Subscription" - - name: "effectiveFromDate" - in: "query" - required: false - type: "string" - format: "date" - - name: "forceNewQuantityWithPastEffectiveDate" - in: "query" - required: false - type: "boolean" - default: false - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -10346,7 +10423,7 @@ paths: "204": description: "Successful operation" "400": - description: "Invalid entitlement supplied" + description: "Invalid tagDefinitionId supplied" security: - basicAuth: [] - Killbill Api Key: [] @@ -10380,78 +10457,6 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/tagDefinitions/{tagDefinitionId}: - get: - tags: - - "TagDefinition" - summary: "Retrieve a tag definition" - description: "" - operationId: "getTagDefinition" - produces: - - "application/json" - parameters: - - name: "tagDefinitionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "audit" - in: "query" - required: false - type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" - responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/TagDefinition" - "400": - description: "Invalid tagDefinitionId supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - delete: - tags: - - "TagDefinition" - summary: "Delete a tag definition" - description: "" - operationId: "deleteTagDefinition" - produces: - - "application/json" - parameters: - - name: "tagDefinitionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid tagDefinitionId supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] /1.0/kb/tagDefinitions: get: tags: @@ -10521,44 +10526,31 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/tags/pagination: + /1.0/kb/tags/{tagId}/auditLogsWithHistory: get: tags: - "Tag" - summary: "List tags" + summary: "Retrieve tag audit logs with history by id" description: "" - operationId: "getTags" + operationId: "getTagAuditLogsWithHistory" produces: - "application/json" parameters: - - name: "offset" - in: "query" - required: false - type: "integer" - default: 0 - format: "int64" - - name: "limit" - in: "query" - required: false - type: "integer" - default: 100 - format: "int64" - - name: "audit" - in: "query" - required: false + - name: "tagId" + in: "path" + required: true type: "string" - default: "NONE" - enum: - - "FULL" - - "MINIMAL" - - "NONE" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" responses: "200": description: "successful operation" schema: type: "array" items: - $ref: "#/definitions/Tag" + $ref: "#/definitions/AuditLog" + "404": + description: "Account not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -10610,31 +10602,44 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/tags/{tagId}/auditLogsWithHistory: + /1.0/kb/tags/pagination: get: tags: - "Tag" - summary: "Retrieve tag audit logs with history by id" + summary: "List tags" description: "" - operationId: "getTagAuditLogsWithHistory" + operationId: "getTags" produces: - "application/json" parameters: - - name: "tagId" - in: "path" - required: true + - name: "offset" + in: "query" + required: false + type: "integer" + default: 0 + format: "int64" + - name: "limit" + in: "query" + required: false + type: "integer" + default: 100 + format: "int64" + - name: "audit" + in: "query" + required: false type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + default: "NONE" + enum: + - "FULL" + - "MINIMAL" + - "NONE" responses: "200": description: "successful operation" schema: type: "array" items: - $ref: "#/definitions/AuditLog" - "404": - description: "Account not found" + $ref: "#/definitions/Tag" security: - basicAuth: [] - Killbill Api Key: [] @@ -10742,35 +10747,37 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/tenants/uploadPerTenantConfig: + /1.0/kb/tenants: get: tags: - "Tenant" - summary: "Retrieve a per tenant configuration (system properties)" + summary: "Retrieve a tenant by its API key" description: "" - operationId: "getPerTenantConfiguration" + operationId: "getTenantByApiKey" produces: - "application/json" - parameters: [] + parameters: + - name: "apiKey" + in: "query" + required: false + type: "string" responses: "200": description: "successful operation" schema: - $ref: "#/definitions/TenantKeyValue" - "400": - description: "Invalid tenantId supplied" + $ref: "#/definitions/Tenant" + "404": + description: "Tenant not found" security: - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] post: tags: - "Tenant" - summary: "Add a per tenant configuration (system properties)" + summary: "Create a tenant" description: "" - operationId: "uploadPerTenantConfiguration" + operationId: "createTenant" consumes: - - "text/plain" + - "application/json" produces: - "application/json" parameters: @@ -10778,7 +10785,12 @@ paths: name: "body" required: true schema: - type: "string" + $ref: "#/definitions/Tenant" + - name: "useGlobalDefault" + in: "query" + required: false + type: "boolean" + default: false - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -10793,53 +10805,28 @@ paths: type: "string" responses: "201": - description: "Per tenant configuration uploaded successfully" + description: "Tenant created successfully" schema: - $ref: "#/definitions/TenantKeyValue" - "400": - description: "Invalid tenantId supplied" + $ref: "#/definitions/Tenant" + "409": + description: "Tenant already exists" security: - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - delete: + /1.0/kb/tenants/userKeyValue/{keyName}: + get: tags: - "Tenant" - summary: "Delete a per tenant configuration (system properties)" + summary: "Retrieve a per tenant user key/value" description: "" - operationId: "deletePerTenantConfiguration" + operationId: "getUserKeyValue" + produces: + - "application/json" parameters: - - name: "X-Killbill-CreatedBy" - in: "header" + - name: "keyName" + in: "path" required: true type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "204": - description: "Successful operation" - "400": - description: "Invalid tenantId supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/tenants/registerNotificationCallback: - get: - tags: - - "Tenant" - summary: "Retrieve a push notification" - description: "" - operationId: "getPushNotificationCallbacks" - produces: - - "application/json" - parameters: [] + pattern: ".*" responses: "200": description: "successful operation" @@ -10854,18 +10841,24 @@ paths: post: tags: - "Tenant" - summary: "Create a push notification" + summary: "Add a per tenant user key/value" description: "" - operationId: "registerPushNotificationCallback" + operationId: "insertUserKeyValue" consumes: - - "application/json" + - "text/plain" produces: - "application/json" parameters: - - name: "cb" - in: "query" - required: false + - name: "keyName" + in: "path" + required: true type: "string" + pattern: ".*" + - in: "body" + name: "body" + required: true + schema: + type: "string" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -10880,7 +10873,7 @@ paths: type: "string" responses: "201": - description: "Push notification registered successfully" + description: "Per tenant config uploaded successfully" schema: $ref: "#/definitions/TenantKeyValue" "400": @@ -10892,10 +10885,15 @@ paths: delete: tags: - "Tenant" - summary: "Delete a push notification" + summary: "Delete a per tenant user key/value" description: "" - operationId: "deletePushNotificationCallbacks" + operationId: "deleteUserKeyValue" parameters: + - name: "keyName" + in: "path" + required: true + type: "string" + pattern: ".*" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -10917,37 +10915,92 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/tenants: + /1.0/kb/tenants/{tenantId}: get: tags: - "Tenant" - summary: "Retrieve a tenant by its API key" + summary: "Retrieve a tenant by id" description: "" - operationId: "getTenantByApiKey" + operationId: "getTenant" produces: - "application/json" parameters: - - name: "apiKey" - in: "query" - required: false + - name: "tenantId" + in: "path" + required: true type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" responses: "200": description: "successful operation" schema: $ref: "#/definitions/Tenant" + "400": + description: "Invalid tenantId supplied" "404": description: "Tenant not found" security: - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/tenants/uploadPerTenantConfig/{keyPrefix}/search: + get: + tags: + - "Tenant" + summary: "Retrieve a per tenant key value based on key prefix" + description: "" + operationId: "getAllPluginConfiguration" + produces: + - "application/json" + parameters: + - name: "keyPrefix" + in: "path" + required: true + type: "string" + pattern: ".*" + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/TenantKeyValue" + "400": + description: "Invalid tenantId supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/tenants/uploadPerTenantConfig: + get: + tags: + - "Tenant" + summary: "Retrieve a per tenant configuration (system properties)" + description: "" + operationId: "getPerTenantConfiguration" + produces: + - "application/json" + parameters: [] + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/TenantKeyValue" + "400": + description: "Invalid tenantId supplied" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] post: tags: - "Tenant" - summary: "Create a tenant" + summary: "Add a per tenant configuration (system properties)" description: "" - operationId: "createTenant" + operationId: "uploadPerTenantConfiguration" consumes: - - "application/json" + - "text/plain" produces: - "application/json" parameters: @@ -10955,12 +11008,7 @@ paths: name: "body" required: true schema: - $ref: "#/definitions/Tenant" - - name: "useGlobalDefault" - in: "query" - required: false - type: "boolean" - default: false + type: "string" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -10975,38 +11023,39 @@ paths: type: "string" responses: "201": - description: "Tenant created successfully" + description: "Per tenant configuration uploaded successfully" schema: - $ref: "#/definitions/Tenant" - "409": - description: "Tenant already exists" + $ref: "#/definitions/TenantKeyValue" + "400": + description: "Invalid tenantId supplied" security: - basicAuth: [] - /1.0/kb/tenants/{tenantId}: - get: + - Killbill Api Key: [] + - Killbill Api Secret: [] + delete: tags: - "Tenant" - summary: "Retrieve a tenant by id" + summary: "Delete a per tenant configuration (system properties)" description: "" - operationId: "getTenant" - produces: - - "application/json" + operationId: "deletePerTenantConfiguration" parameters: - - name: "tenantId" - in: "path" + - name: "X-Killbill-CreatedBy" + in: "header" required: true type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" responses: - "200": - description: "successful operation" - schema: - $ref: "#/definitions/Tenant" + "204": + description: "Successful operation" "400": description: "Invalid tenantId supplied" - "404": - description: "Tenant not found" security: - basicAuth: [] - Killbill Api Key: [] @@ -11114,21 +11163,16 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/tenants/userKeyValue/{keyName}: + /1.0/kb/tenants/registerNotificationCallback: get: tags: - "Tenant" - summary: "Retrieve a per tenant user key/value" + summary: "Retrieve a push notification" description: "" - operationId: "getUserKeyValue" + operationId: "getPushNotificationCallbacks" produces: - "application/json" - parameters: - - name: "keyName" - in: "path" - required: true - type: "string" - pattern: ".*" + parameters: [] responses: "200": description: "successful operation" @@ -11143,24 +11187,18 @@ paths: post: tags: - "Tenant" - summary: "Add a per tenant user key/value" + summary: "Create a push notification" description: "" - operationId: "insertUserKeyValue" + operationId: "registerPushNotificationCallback" consumes: - - "text/plain" + - "application/json" produces: - "application/json" parameters: - - name: "keyName" - in: "path" - required: true + - name: "cb" + in: "query" + required: false type: "string" - pattern: ".*" - - in: "body" - name: "body" - required: true - schema: - type: "string" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -11175,7 +11213,7 @@ paths: type: "string" responses: "201": - description: "Per tenant config uploaded successfully" + description: "Push notification registered successfully" schema: $ref: "#/definitions/TenantKeyValue" "400": @@ -11187,15 +11225,10 @@ paths: delete: tags: - "Tenant" - summary: "Delete a per tenant user key/value" + summary: "Delete a push notification" description: "" - operationId: "deleteUserKeyValue" + operationId: "deletePushNotificationCallbacks" parameters: - - name: "keyName" - in: "path" - required: true - type: "string" - pattern: ".*" - name: "X-Killbill-CreatedBy" in: "header" required: true @@ -11217,48 +11250,22 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/tenants/uploadPerTenantConfig/{keyPrefix}/search: + /1.0/kb/paymentTransactions/{transactionId}: get: tags: - - "Tenant" - summary: "Retrieve a per tenant key value based on key prefix" + - "PaymentTransaction" + summary: "Retrieve a payment by transaction id" description: "" - operationId: "getAllPluginConfiguration" + operationId: "getPaymentByTransactionId" produces: - "application/json" parameters: - - name: "keyPrefix" + - name: "transactionId" in: "path" required: true type: "string" - pattern: ".*" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/TenantKeyValue" - "400": - description: "Invalid tenantId supplied" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] - /1.0/kb/paymentTransactions: - get: - tags: - - "PaymentTransaction" - summary: "Retrieve a payment by transaction external key" - description: "" - operationId: "getPaymentByTransactionExternalKey" - produces: - - "application/json" - parameters: - - name: "transactionExternalKey" - in: "query" - required: true - type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" - name: "withPluginInfo" in: "query" required: false @@ -11296,6 +11303,60 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + post: + tags: + - "PaymentTransaction" + summary: "Mark a pending payment transaction as succeeded or failed" + description: "" + operationId: "notifyStateChanged" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - name: "transactionId" + in: "path" + required: true + type: "string" + pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" + format: "uuid" + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/PaymentTransaction" + - name: "controlPluginName" + in: "query" + required: false + type: "array" + items: + type: "string" + collectionFormat: "multi" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "201": + description: "Successfully notifiy state change" + schema: + $ref: "#/definitions/Payment" + "400": + description: "Invalid paymentId supplied" + "404": + description: "Account or Payment not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] /1.0/kb/paymentTransactions/{transactionId}/customFields: get: tags: @@ -11474,35 +11535,6 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/paymentTransactions/{transactionId}/auditLogsWithHistory: - get: - tags: - - "PaymentTransaction" - summary: "Retrieve payment transaction audit logs with history by id" - description: "" - operationId: "getTransactionAuditLogsWithHistory" - produces: - - "application/json" - parameters: - - name: "transactionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - responses: - "200": - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/AuditLog" - "404": - description: "Account not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] /1.0/kb/paymentTransactions/{transactionId}/tags: get: tags: @@ -11644,13 +11676,13 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/paymentTransactions/{transactionId}: + /1.0/kb/paymentTransactions/{transactionId}/auditLogsWithHistory: get: tags: - "PaymentTransaction" - summary: "Retrieve a payment by transaction id" + summary: "Retrieve payment transaction audit logs with history by id" description: "" - operationId: "getPaymentByTransactionId" + operationId: "getTransactionAuditLogsWithHistory" produces: - "application/json" parameters: @@ -11660,6 +11692,33 @@ paths: type: "string" pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" format: "uuid" + responses: + "200": + description: "successful operation" + schema: + type: "array" + items: + $ref: "#/definitions/AuditLog" + "404": + description: "Account not found" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] + /1.0/kb/paymentTransactions: + get: + tags: + - "PaymentTransaction" + summary: "Retrieve a payment by transaction external key" + description: "" + operationId: "getPaymentByTransactionExternalKey" + produces: + - "application/json" + parameters: + - name: "transactionExternalKey" + in: "query" + required: true + type: "string" - name: "withPluginInfo" in: "query" required: false @@ -11697,60 +11756,6 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - post: - tags: - - "PaymentTransaction" - summary: "Mark a pending payment transaction as succeeded or failed" - description: "" - operationId: "notifyStateChanged" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - name: "transactionId" - in: "path" - required: true - type: "string" - pattern: "\\w+-\\w+-\\w+-\\w+-\\w+" - format: "uuid" - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/PaymentTransaction" - - name: "controlPluginName" - in: "query" - required: false - type: "array" - items: - type: "string" - collectionFormat: "multi" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "201": - description: "Successfully notifiy state change" - schema: - $ref: "#/definitions/Payment" - "400": - description: "Invalid paymentId supplied" - "404": - description: "Account or Payment not found" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] /1.0/kb/usages/{subscriptionId}/{unitType}: get: tags: @@ -11799,6 +11804,44 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] + /1.0/kb/usages: + post: + tags: + - "Usage" + summary: "Record usage for a subscription" + description: "" + operationId: "recordUsage" + consumes: + - "application/json" + produces: + - "application/json" + parameters: + - in: "body" + name: "body" + required: true + schema: + $ref: "#/definitions/SubscriptionUsageRecord" + - name: "X-Killbill-CreatedBy" + in: "header" + required: true + type: "string" + - name: "X-Killbill-Reason" + in: "header" + required: false + type: "string" + - name: "X-Killbill-Comment" + in: "header" + required: false + type: "string" + responses: + "200": + description: "Successfully recorded usage data change" + "400": + description: "Invalid subscription (e.g. inactive)" + security: + - basicAuth: [] + - Killbill Api Key: [] + - Killbill Api Secret: [] /1.0/kb/usages/{subscriptionId}: get: tags: @@ -11843,44 +11886,6 @@ paths: - basicAuth: [] - Killbill Api Key: [] - Killbill Api Secret: [] - /1.0/kb/usages: - post: - tags: - - "Usage" - summary: "Record usage for a subscription" - description: "" - operationId: "recordUsage" - consumes: - - "application/json" - produces: - - "application/json" - parameters: - - in: "body" - name: "body" - required: true - schema: - $ref: "#/definitions/SubscriptionUsageRecord" - - name: "X-Killbill-CreatedBy" - in: "header" - required: true - type: "string" - - name: "X-Killbill-Reason" - in: "header" - required: false - type: "string" - - name: "X-Killbill-Comment" - in: "header" - required: false - type: "string" - responses: - "200": - description: "Successfully recorded usage data change" - "400": - description: "Invalid subscription (e.g. inactive)" - security: - - basicAuth: [] - - Killbill Api Key: [] - - Killbill Api Secret: [] securityDefinitions: basicAuth: type: "basic" @@ -11893,66 +11898,24 @@ securityDefinitions: name: "X-Killbill-ApiSecret" in: "header" definitions: - AuditLog: + Account: type: "object" properties: - changeType: - type: "string" - changeDate: - type: "string" - format: "date-time" - objectType: - type: "string" - enum: - - "ACCOUNT" - - "ACCOUNT_EMAIL" - - "BLOCKING_STATES" - - "BUNDLE" - - "CUSTOM_FIELD" - - "INVOICE" - - "PAYMENT" - - "TRANSACTION" - - "INVOICE_ITEM" - - "INVOICE_PAYMENT" - - "SUBSCRIPTION" - - "SUBSCRIPTION_EVENT" - - "SERVICE_BROADCAST" - - "PAYMENT_ATTEMPT" - - "PAYMENT_METHOD" - - "TAG" - - "TAG_DEFINITION" - - "TENANT" - - "TENANT_KVS" - objectId: + accountId: type: "string" format: "uuid" - changedBy: - type: "string" - reasonCode: - type: "string" - comments: - type: "string" - userToken: - type: "string" - history: - $ref: "#/definitions/Entity" - Entity: - type: "object" - properties: - id: + name: type: "string" - format: "uuid" - createdDate: + firstNameLength: + type: "integer" + format: "int32" + externalKey: type: "string" - format: "date-time" - updatedDate: + email: type: "string" - format: "date-time" - Invoice: - type: "object" - properties: - amount: - type: "number" + billCycleDayLocal: + type: "integer" + format: "int32" currency: type: "string" enum: @@ -12121,372 +12084,457 @@ definitions: - "ZMW" - "ZWD" - "BTC" - status: + parentAccountId: type: "string" - enum: - - "DRAFT" - - "COMMITTED" - - "VOID" - creditAdj: - type: "number" - refundAdj: - type: "number" - invoiceId: + format: "uuid" + isPaymentDelegatedToParent: + type: "boolean" + paymentMethodId: type: "string" format: "uuid" - invoiceDate: + referenceTime: type: "string" - format: "date" - targetDate: + format: "date-time" + timeZone: type: "string" - format: "date" - invoiceNumber: + address1: type: "string" - balance: - type: "number" - accountId: + address2: type: "string" - format: "uuid" - bundleKeys: + postalCode: type: "string" - credits: - type: "array" - items: - $ref: "#/definitions/InvoiceItem" - items: - type: "array" - items: - $ref: "#/definitions/InvoiceItem" - trackingIds: - type: "array" - items: - type: "string" - isParentInvoice: - type: "boolean" - parentInvoiceId: + company: type: "string" - format: "uuid" - parentAccountId: + city: type: "string" - format: "uuid" + state: + type: "string" + country: + type: "string" + locale: + type: "string" + phone: + type: "string" + notes: + type: "string" + isMigrated: + type: "boolean" + accountBalance: + type: "number" + accountCBA: + type: "number" auditLogs: type: "array" items: $ref: "#/definitions/AuditLog" - InvoiceItem: + AuditLog: type: "object" - required: - - "accountId" - - "invoiceItemId" properties: - invoiceItemId: - type: "string" - format: "uuid" - invoiceId: + changeType: type: "string" - format: "uuid" - linkedInvoiceItemId: + changeDate: type: "string" - format: "uuid" - accountId: + format: "date-time" + objectType: type: "string" - format: "uuid" - childAccountId: + enum: + - "ACCOUNT" + - "ACCOUNT_EMAIL" + - "BLOCKING_STATES" + - "BUNDLE" + - "CUSTOM_FIELD" + - "INVOICE" + - "PAYMENT" + - "TRANSACTION" + - "INVOICE_ITEM" + - "INVOICE_PAYMENT" + - "SUBSCRIPTION" + - "SUBSCRIPTION_EVENT" + - "SERVICE_BROADCAST" + - "PAYMENT_ATTEMPT" + - "PAYMENT_METHOD" + - "TAG" + - "TAG_DEFINITION" + - "TENANT" + - "TENANT_KVS" + objectId: type: "string" format: "uuid" - bundleId: + changedBy: type: "string" - format: "uuid" - subscriptionId: + reasonCode: type: "string" - format: "uuid" - productName: + comments: type: "string" - planName: + userToken: type: "string" - phaseName: + history: + $ref: "#/definitions/Entity" + Entity: + type: "object" + properties: + id: type: "string" - usageName: + format: "uuid" + createdDate: type: "string" - prettyProductName: + format: "date-time" + updatedDate: type: "string" - prettyPlanName: + format: "date-time" + AccountEmail: + type: "object" + required: + - "email" + properties: + accountId: type: "string" - prettyPhaseName: + format: "uuid" + email: type: "string" - prettyUsageName: + auditLogs: + type: "array" + items: + $ref: "#/definitions/AuditLog" + Tag: + type: "object" + properties: + tagId: type: "string" - itemType: + format: "uuid" + objectType: type: "string" enum: - - "EXTERNAL_CHARGE" - - "FIXED" - - "RECURRING" - - "REPAIR_ADJ" - - "CBA_ADJ" - - "CREDIT_ADJ" - - "ITEM_ADJ" - - "USAGE" - - "TAX" - - "PARENT_SUMMARY" - description: + - "ACCOUNT" + - "ACCOUNT_EMAIL" + - "BLOCKING_STATES" + - "BUNDLE" + - "CUSTOM_FIELD" + - "INVOICE" + - "PAYMENT" + - "TRANSACTION" + - "INVOICE_ITEM" + - "INVOICE_PAYMENT" + - "SUBSCRIPTION" + - "SUBSCRIPTION_EVENT" + - "SERVICE_BROADCAST" + - "PAYMENT_ATTEMPT" + - "PAYMENT_METHOD" + - "TAG" + - "TAG_DEFINITION" + - "TENANT" + - "TENANT_KVS" + objectId: type: "string" - startDate: + format: "uuid" + tagDefinitionId: type: "string" - format: "date" - endDate: + format: "uuid" + tagDefinitionName: type: "string" - format: "date" - amount: - type: "number" - rate: - type: "number" - currency: + auditLogs: + type: "array" + items: + $ref: "#/definitions/AuditLog" + BlockPrice: + type: "object" + properties: + unitName: type: "string" - enum: - - "AED" - - "AFN" - - "ALL" - - "AMD" - - "ANG" - - "AOA" - - "ARS" - - "AUD" - - "AWG" - - "AZN" - - "BAM" - - "BBD" - - "BDT" - - "BGN" - - "BHD" - - "BIF" - - "BMD" - - "BND" - - "BOB" - - "BRL" - - "BSD" - - "BTN" - - "BWP" - - "BYR" - - "BZD" - - "CAD" - - "CDF" - - "CHF" - - "CLP" - - "CNY" - - "COP" - - "CRC" - - "CUC" - - "CUP" - - "CVE" - - "CZK" - - "DJF" - - "DKK" - - "DOP" - - "DZD" - - "EGP" - - "ERN" - - "ETB" - - "EUR" - - "FJD" - - "FKP" - - "GBP" - - "GEL" - - "GGP" - - "GHS" - - "GIP" - - "GMD" - - "GNF" - - "GTQ" - - "GYD" - - "HKD" - - "HNL" - - "HRK" - - "HTG" - - "HUF" - - "IDR" - - "ILS" - - "IMP" - - "INR" - - "IQD" - - "IRR" - - "ISK" - - "JEP" - - "JMD" - - "JOD" - - "JPY" - - "KES" - - "KGS" - - "KHR" - - "KMF" - - "KPW" - - "KRW" - - "KWD" - - "KYD" - - "KZT" - - "LAK" - - "LBP" - - "LKR" - - "LRD" - - "LSL" - - "LTL" - - "LVL" - - "LYD" - - "MAD" - - "MDL" - - "MGA" - - "MKD" - - "MMK" - - "MNT" - - "MOP" - - "MRO" - - "MUR" - - "MVR" - - "MWK" - - "MXN" - - "MYR" - - "MZN" - - "NAD" - - "NGN" - - "NIO" - - "NOK" - - "NPR" - - "NZD" - - "OMR" - - "PAB" - - "PEN" - - "PGK" - - "PHP" - - "PKR" - - "PLN" - - "PYG" - - "QAR" - - "RON" - - "RSD" - - "RUB" - - "RWF" - - "SAR" - - "SBD" - - "SCR" - - "SDG" - - "SEK" - - "SGD" - - "SHP" - - "SLL" - - "SOS" - - "SPL" - - "SRD" - - "STD" - - "SVC" - - "SYP" - - "SZL" - - "THB" - - "TJS" - - "TMT" - - "TND" - - "TOP" - - "TRY" - - "TTD" - - "TVD" - - "TWD" - - "TZS" - - "UAH" - - "UGX" - - "USD" - - "UYU" - - "UZS" - - "VEF" - - "VND" - - "VUV" - - "WST" - - "XAF" - - "XCD" - - "XDR" - - "XOF" - - "XPF" - - "YER" - - "ZAR" - - "ZMW" - - "ZWD" - - "BTC" - quantity: + size: type: "number" - itemDetails: + price: + type: "number" + max: + type: "number" + Bundle: + type: "object" + required: + - "accountId" + properties: + accountId: type: "string" - catalogEffectiveDate: + format: "uuid" + bundleId: type: "string" - format: "date-time" - childItems: + format: "uuid" + externalKey: + type: "string" + subscriptions: type: "array" items: - $ref: "#/definitions/InvoiceItem" + $ref: "#/definitions/Subscription" + timeline: + $ref: "#/definitions/BundleTimeline" auditLogs: type: "array" items: $ref: "#/definitions/AuditLog" - PaymentMethod: + BundleTimeline: type: "object" properties: - paymentMethodId: + accountId: type: "string" format: "uuid" - externalKey: - type: "string" - accountId: + bundleId: type: "string" format: "uuid" - isDefault: - type: "boolean" - pluginName: + externalKey: type: "string" - pluginInfo: - $ref: "#/definitions/PaymentMethodPluginDetail" - auditLogs: + events: type: "array" items: - $ref: "#/definitions/AuditLog" - PaymentMethodPluginDetail: - type: "object" - properties: - externalPaymentMethodId: - type: "string" - isDefaultPaymentMethod: - type: "boolean" - properties: + $ref: "#/definitions/EventSubscription" + auditLogs: type: "array" items: - $ref: "#/definitions/PluginProperty" - PluginProperty: - type: "object" - properties: - key: - type: "string" - value: - type: "string" - isUpdatable: - type: "boolean" - Payment: + $ref: "#/definitions/AuditLog" + EventSubscription: type: "object" properties: - accountId: - type: "string" - format: "uuid" - paymentId: + eventId: type: "string" format: "uuid" - paymentNumber: - type: "string" - paymentExternalKey: + billingPeriod: type: "string" - authAmount: - type: "number" - capturedAmount: - type: "number" - purchasedAmount: + enum: + - "DAILY" + - "WEEKLY" + - "BIWEEKLY" + - "THIRTY_DAYS" + - "THIRTY_ONE_DAYS" + - "SIXTY_DAYS" + - "NINETY_DAYS" + - "MONTHLY" + - "BIMESTRIAL" + - "QUARTERLY" + - "TRIANNUAL" + - "BIANNUAL" + - "ANNUAL" + - "SESQUIENNIAL" + - "BIENNIAL" + - "TRIENNIAL" + - "NO_BILLING_PERIOD" + effectiveDate: + type: "string" + format: "date-time" + catalogEffectiveDate: + type: "string" + format: "date-time" + plan: + type: "string" + product: + type: "string" + priceList: + type: "string" + eventType: + type: "string" + enum: + - "START_ENTITLEMENT" + - "START_BILLING" + - "PAUSE_ENTITLEMENT" + - "PAUSE_BILLING" + - "RESUME_ENTITLEMENT" + - "RESUME_BILLING" + - "PHASE" + - "CHANGE" + - "STOP_ENTITLEMENT" + - "STOP_BILLING" + - "SERVICE_STATE_CHANGE" + isBlockedBilling: + type: "boolean" + isBlockedEntitlement: + type: "boolean" + serviceName: + type: "string" + serviceStateName: + type: "string" + phase: + type: "string" + auditLogs: + type: "array" + items: + $ref: "#/definitions/AuditLog" + PhasePrice: + type: "object" + properties: + planName: + type: "string" + phaseName: + type: "string" + phaseType: + type: "string" + fixedPrice: type: "number" - refundedAmount: + recurringPrice: type: "number" - creditedAmount: + usagePrices: + type: "array" + items: + $ref: "#/definitions/UsagePrice" + Subscription: + type: "object" + required: + - "billingPeriod" + - "planName" + - "priceList" + - "productName" + properties: + accountId: + type: "string" + format: "uuid" + bundleId: + type: "string" + format: "uuid" + bundleExternalKey: + type: "string" + subscriptionId: + type: "string" + format: "uuid" + externalKey: + type: "string" + startDate: + type: "string" + format: "date-time" + productName: + type: "string" + productCategory: + type: "string" + enum: + - "BASE" + - "ADD_ON" + - "STANDALONE" + billingPeriod: + type: "string" + enum: + - "DAILY" + - "WEEKLY" + - "BIWEEKLY" + - "THIRTY_DAYS" + - "THIRTY_ONE_DAYS" + - "SIXTY_DAYS" + - "NINETY_DAYS" + - "MONTHLY" + - "BIMESTRIAL" + - "QUARTERLY" + - "TRIANNUAL" + - "BIANNUAL" + - "ANNUAL" + - "SESQUIENNIAL" + - "BIENNIAL" + - "TRIENNIAL" + - "NO_BILLING_PERIOD" + phaseType: + type: "string" + enum: + - "TRIAL" + - "DISCOUNT" + - "FIXEDTERM" + - "EVERGREEN" + priceList: + type: "string" + planName: + type: "string" + state: + type: "string" + enum: + - "PENDING" + - "ACTIVE" + - "BLOCKED" + - "CANCELLED" + - "EXPIRED" + sourceType: + type: "string" + enum: + - "NATIVE" + - "MIGRATED" + - "TRANSFERRED" + cancelledDate: + type: "string" + format: "date-time" + chargedThroughDate: + type: "string" + format: "date" + billingStartDate: + type: "string" + format: "date-time" + billingEndDate: + type: "string" + format: "date-time" + billCycleDayLocal: + type: "integer" + format: "int32" + quantity: + type: "integer" + format: "int32" + events: + type: "array" + items: + $ref: "#/definitions/EventSubscription" + priceOverrides: + type: "array" + items: + $ref: "#/definitions/PhasePrice" + prices: + type: "array" + items: + $ref: "#/definitions/PhasePrice" + auditLogs: + type: "array" + items: + $ref: "#/definitions/AuditLog" + TierPrice: + type: "object" + properties: + blockPrices: + type: "array" + items: + $ref: "#/definitions/BlockPrice" + UsagePrice: + type: "object" + properties: + usageName: + type: "string" + usageType: + type: "string" + enum: + - "CAPACITY" + - "CONSUMABLE" + billingMode: + type: "string" + enum: + - "IN_ADVANCE" + - "IN_ARREAR" + tierBlockPolicy: + type: "string" + enum: + - "ALL_TIERS" + - "TOP_TIER" + tierPrices: + type: "array" + items: + $ref: "#/definitions/TierPrice" + AccountTimeline: + type: "object" + properties: + account: + $ref: "#/definitions/Account" + bundles: + type: "array" + items: + $ref: "#/definitions/Bundle" + invoices: + type: "array" + items: + $ref: "#/definitions/Invoice" + payments: + type: "array" + items: + $ref: "#/definitions/InvoicePayment" + Invoice: + type: "object" + properties: + amount: type: "number" currency: type: "string" @@ -12656,58 +12704,128 @@ definitions: - "ZMW" - "ZWD" - "BTC" - paymentMethodId: + status: + type: "string" + enum: + - "DRAFT" + - "COMMITTED" + - "VOID" + creditAdj: + type: "number" + refundAdj: + type: "number" + invoiceId: type: "string" format: "uuid" - transactions: - type: "array" - items: - $ref: "#/definitions/PaymentTransaction" - paymentAttempts: - type: "array" + invoiceDate: + type: "string" + format: "date" + targetDate: + type: "string" + format: "date" + invoiceNumber: + type: "string" + balance: + type: "number" + accountId: + type: "string" + format: "uuid" + bundleKeys: + type: "string" + credits: + type: "array" items: - $ref: "#/definitions/PaymentAttempt" + $ref: "#/definitions/InvoiceItem" + items: + type: "array" + items: + $ref: "#/definitions/InvoiceItem" + trackingIds: + type: "array" + items: + type: "string" + isParentInvoice: + type: "boolean" + parentInvoiceId: + type: "string" + format: "uuid" + parentAccountId: + type: "string" + format: "uuid" auditLogs: type: "array" items: $ref: "#/definitions/AuditLog" - PaymentAttempt: + InvoiceItem: type: "object" + required: + - "accountId" + - "invoiceItemId" properties: + invoiceItemId: + type: "string" + format: "uuid" + invoiceId: + type: "string" + format: "uuid" + linkedInvoiceItemId: + type: "string" + format: "uuid" accountId: type: "string" format: "uuid" - paymentMethodId: + childAccountId: type: "string" format: "uuid" - paymentExternalKey: + bundleId: type: "string" - transactionId: + format: "uuid" + subscriptionId: type: "string" format: "uuid" - transactionExternalKey: + productName: type: "string" - transactionType: + planName: + type: "string" + phaseName: + type: "string" + usageName: + type: "string" + prettyProductName: + type: "string" + prettyPlanName: + type: "string" + prettyPhaseName: + type: "string" + prettyUsageName: + type: "string" + itemType: type: "string" enum: - - "AUTHORIZE" - - "CAPTURE" - - "CHARGEBACK" - - "CREDIT" - - "PURCHASE" - - "REFUND" - - "VOID" - effectiveDate: + - "EXTERNAL_CHARGE" + - "FIXED" + - "RECURRING" + - "REPAIR_ADJ" + - "CBA_ADJ" + - "CREDIT_ADJ" + - "ITEM_ADJ" + - "USAGE" + - "TAX" + - "PARENT_SUMMARY" + description: type: "string" - format: "date-time" - stateName: + startDate: type: "string" + format: "date" + endDate: + type: "string" + format: "date" amount: type: "number" - description: "Transaction amount, required except for void operations" + rate: + type: "number" currency: type: "string" - description: "Amount currency (account currency unless specified)" enum: - "AED" - "AFN" @@ -12874,46 +12992,49 @@ definitions: - "ZMW" - "ZWD" - "BTC" - pluginName: + quantity: + type: "number" + itemDetails: type: "string" - pluginProperties: + catalogEffectiveDate: + type: "string" + format: "date-time" + childItems: type: "array" items: - $ref: "#/definitions/PluginProperty" + $ref: "#/definitions/InvoiceItem" auditLogs: type: "array" items: $ref: "#/definitions/AuditLog" - PaymentTransaction: + InvoicePayment: type: "object" properties: - transactionId: + targetInvoiceId: type: "string" format: "uuid" - transactionExternalKey: + accountId: type: "string" + format: "uuid" paymentId: type: "string" format: "uuid" - description: "Associated payment id, required when notifying state transitions" - paymentExternalKey: + paymentNumber: type: "string" - transactionType: + paymentExternalKey: type: "string" - enum: - - "AUTHORIZE" - - "CAPTURE" - - "CHARGEBACK" - - "CREDIT" - - "PURCHASE" - - "REFUND" - - "VOID" - amount: + authAmount: + type: "number" + capturedAmount: + type: "number" + purchasedAmount: + type: "number" + refundedAmount: + type: "number" + creditedAmount: type: "number" - description: "Transaction amount, required except for void operations" currency: type: "string" - description: "Amount currency (account currency unless specified)" enum: - "AED" - "AFN" @@ -13080,13 +13201,58 @@ definitions: - "ZMW" - "ZWD" - "BTC" + paymentMethodId: + type: "string" + format: "uuid" + transactions: + type: "array" + items: + $ref: "#/definitions/PaymentTransaction" + paymentAttempts: + type: "array" + items: + $ref: "#/definitions/PaymentAttempt" + auditLogs: + type: "array" + items: + $ref: "#/definitions/AuditLog" + PaymentAttempt: + type: "object" + properties: + accountId: + type: "string" + format: "uuid" + paymentMethodId: + type: "string" + format: "uuid" + paymentExternalKey: + type: "string" + transactionId: + type: "string" + format: "uuid" + transactionExternalKey: + type: "string" + transactionType: + type: "string" + enum: + - "AUTHORIZE" + - "CAPTURE" + - "CHARGEBACK" + - "CREDIT" + - "PURCHASE" + - "REFUND" + - "VOID" effectiveDate: type: "string" format: "date-time" - processedAmount: + stateName: + type: "string" + amount: type: "number" - processedCurrency: + description: "Transaction amount, required except for void operations" + currency: type: "string" + description: "Amount currency (account currency unless specified)" enum: - "AED" - "AFN" @@ -13253,25 +13419,9 @@ definitions: - "ZMW" - "ZWD" - "BTC" - status: - type: "string" - description: "Transaction status, required for state change notifications" - enum: - - "SUCCESS" - - "UNKNOWN" - - "PENDING" - - "PAYMENT_FAILURE" - - "PLUGIN_FAILURE" - - "PAYMENT_SYSTEM_OFF" - gatewayErrorCode: - type: "string" - gatewayErrorMsg: - type: "string" - firstPaymentReferenceId: - type: "string" - secondPaymentReferenceId: + pluginName: type: "string" - properties: + pluginProperties: type: "array" items: $ref: "#/definitions/PluginProperty" @@ -13279,151 +13429,36 @@ definitions: type: "array" items: $ref: "#/definitions/AuditLog" - Tag: + PaymentTransaction: type: "object" properties: - tagId: + transactionId: type: "string" format: "uuid" - objectType: + transactionExternalKey: type: "string" - enum: - - "ACCOUNT" - - "ACCOUNT_EMAIL" - - "BLOCKING_STATES" - - "BUNDLE" - - "CUSTOM_FIELD" - - "INVOICE" - - "PAYMENT" - - "TRANSACTION" - - "INVOICE_ITEM" - - "INVOICE_PAYMENT" - - "SUBSCRIPTION" - - "SUBSCRIPTION_EVENT" - - "SERVICE_BROADCAST" - - "PAYMENT_ATTEMPT" - - "PAYMENT_METHOD" - - "TAG" - - "TAG_DEFINITION" - - "TENANT" - - "TENANT_KVS" - objectId: + paymentId: type: "string" format: "uuid" - tagDefinitionId: + description: "Associated payment id, required when notifying state transitions" + paymentExternalKey: type: "string" - format: "uuid" - tagDefinitionName: - type: "string" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - CustomField: - type: "object" - required: - - "name" - - "value" - properties: - customFieldId: - type: "string" - format: "uuid" - objectId: - type: "string" - format: "uuid" - objectType: - type: "string" - enum: - - "ACCOUNT" - - "ACCOUNT_EMAIL" - - "BLOCKING_STATES" - - "BUNDLE" - - "CUSTOM_FIELD" - - "INVOICE" - - "PAYMENT" - - "TRANSACTION" - - "INVOICE_ITEM" - - "INVOICE_PAYMENT" - - "SUBSCRIPTION" - - "SUBSCRIPTION_EVENT" - - "SERVICE_BROADCAST" - - "PAYMENT_ATTEMPT" - - "PAYMENT_METHOD" - - "TAG" - - "TAG_DEFINITION" - - "TENANT" - - "TENANT_KVS" - name: - type: "string" - value: - type: "string" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - BlockingState: - type: "object" - properties: - blockedId: - type: "string" - format: "uuid" - stateName: - type: "string" - service: - type: "string" - isBlockChange: - type: "boolean" - isBlockEntitlement: - type: "boolean" - isBlockBilling: - type: "boolean" - effectiveDate: - type: "string" - format: "date-time" - type: + transactionType: type: "string" enum: - - "SUBSCRIPTION" - - "SUBSCRIPTION_BUNDLE" - - "ACCOUNT" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - AccountEmail: - type: "object" - required: - - "email" - properties: - accountId: - type: "string" - format: "uuid" - email: - type: "string" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - Account: - type: "object" - properties: - accountId: - type: "string" - format: "uuid" - name: - type: "string" - firstNameLength: - type: "integer" - format: "int32" - externalKey: - type: "string" - email: - type: "string" - billCycleDayLocal: - type: "integer" - format: "int32" + - "AUTHORIZE" + - "CAPTURE" + - "CHARGEBACK" + - "CREDIT" + - "PURCHASE" + - "REFUND" + - "VOID" + amount: + type: "number" + description: "Transaction amount, required except for void operations" currency: type: "string" + description: "Amount currency (account currency unless specified)" enum: - "AED" - "AFN" @@ -13590,76 +13625,12 @@ definitions: - "ZMW" - "ZWD" - "BTC" - parentAccountId: - type: "string" - format: "uuid" - isPaymentDelegatedToParent: - type: "boolean" - paymentMethodId: - type: "string" - format: "uuid" - referenceTime: + effectiveDate: type: "string" format: "date-time" - timeZone: - type: "string" - address1: - type: "string" - address2: - type: "string" - postalCode: - type: "string" - company: - type: "string" - city: - type: "string" - state: - type: "string" - country: - type: "string" - locale: - type: "string" - phone: - type: "string" - notes: - type: "string" - isMigrated: - type: "boolean" - accountBalance: - type: "number" - accountCBA: - type: "number" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - InvoicePayment: - type: "object" - properties: - targetInvoiceId: - type: "string" - format: "uuid" - accountId: - type: "string" - format: "uuid" - paymentId: - type: "string" - format: "uuid" - paymentNumber: - type: "string" - paymentExternalKey: - type: "string" - authAmount: - type: "number" - capturedAmount: - type: "number" - purchasedAmount: - type: "number" - refundedAmount: - type: "number" - creditedAmount: + processedAmount: type: "number" - currency: + processedCurrency: type: "string" enum: - "AED" @@ -13827,316 +13798,83 @@ definitions: - "ZMW" - "ZWD" - "BTC" - paymentMethodId: - type: "string" - format: "uuid" - transactions: - type: "array" - items: - $ref: "#/definitions/PaymentTransaction" - paymentAttempts: - type: "array" - items: - $ref: "#/definitions/PaymentAttempt" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - BlockPrice: - type: "object" - properties: - unitName: - type: "string" - size: - type: "number" - price: - type: "number" - max: - type: "number" - Bundle: - type: "object" - required: - - "accountId" - properties: - accountId: - type: "string" - format: "uuid" - bundleId: + status: type: "string" - format: "uuid" - externalKey: + description: "Transaction status, required for state change notifications" + enum: + - "SUCCESS" + - "UNKNOWN" + - "PENDING" + - "PAYMENT_FAILURE" + - "PLUGIN_FAILURE" + - "PAYMENT_SYSTEM_OFF" + gatewayErrorCode: type: "string" - subscriptions: - type: "array" - items: - $ref: "#/definitions/Subscription" - timeline: - $ref: "#/definitions/BundleTimeline" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - BundleTimeline: - type: "object" - properties: - accountId: + gatewayErrorMsg: type: "string" - format: "uuid" - bundleId: + firstPaymentReferenceId: type: "string" - format: "uuid" - externalKey: + secondPaymentReferenceId: type: "string" - events: + properties: type: "array" items: - $ref: "#/definitions/EventSubscription" + $ref: "#/definitions/PluginProperty" auditLogs: type: "array" items: $ref: "#/definitions/AuditLog" - EventSubscription: + PluginProperty: type: "object" properties: - eventId: - type: "string" - format: "uuid" - billingPeriod: - type: "string" - enum: - - "DAILY" - - "WEEKLY" - - "BIWEEKLY" - - "THIRTY_DAYS" - - "THIRTY_ONE_DAYS" - - "SIXTY_DAYS" - - "NINETY_DAYS" - - "MONTHLY" - - "BIMESTRIAL" - - "QUARTERLY" - - "TRIANNUAL" - - "BIANNUAL" - - "ANNUAL" - - "SESQUIENNIAL" - - "BIENNIAL" - - "TRIENNIAL" - - "NO_BILLING_PERIOD" - effectiveDate: - type: "string" - format: "date-time" - catalogEffectiveDate: - type: "string" - format: "date-time" - plan: - type: "string" - product: - type: "string" - priceList: + key: type: "string" - eventType: + value: type: "string" - enum: - - "START_ENTITLEMENT" - - "START_BILLING" - - "PAUSE_ENTITLEMENT" - - "PAUSE_BILLING" - - "RESUME_ENTITLEMENT" - - "RESUME_BILLING" - - "PHASE" - - "CHANGE" - - "STOP_ENTITLEMENT" - - "STOP_BILLING" - - "SERVICE_STATE_CHANGE" - isBlockedBilling: - type: "boolean" - isBlockedEntitlement: + isUpdatable: type: "boolean" - serviceName: - type: "string" - serviceStateName: - type: "string" - phase: - type: "string" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - PhasePrice: - type: "object" - properties: - planName: - type: "string" - phaseName: - type: "string" - phaseType: - type: "string" - fixedPrice: - type: "number" - recurringPrice: - type: "number" - usagePrices: - type: "array" - items: - $ref: "#/definitions/UsagePrice" - Subscription: + CustomField: type: "object" required: - - "billingPeriod" - - "planName" - - "priceList" - - "productName" + - "name" + - "value" properties: - accountId: - type: "string" - format: "uuid" - bundleId: + customFieldId: type: "string" format: "uuid" - bundleExternalKey: - type: "string" - subscriptionId: + objectId: type: "string" format: "uuid" - externalKey: - type: "string" - startDate: - type: "string" - format: "date-time" - productName: - type: "string" - productCategory: - type: "string" - enum: - - "BASE" - - "ADD_ON" - - "STANDALONE" - billingPeriod: - type: "string" - enum: - - "DAILY" - - "WEEKLY" - - "BIWEEKLY" - - "THIRTY_DAYS" - - "THIRTY_ONE_DAYS" - - "SIXTY_DAYS" - - "NINETY_DAYS" - - "MONTHLY" - - "BIMESTRIAL" - - "QUARTERLY" - - "TRIANNUAL" - - "BIANNUAL" - - "ANNUAL" - - "SESQUIENNIAL" - - "BIENNIAL" - - "TRIENNIAL" - - "NO_BILLING_PERIOD" - phaseType: - type: "string" - enum: - - "TRIAL" - - "DISCOUNT" - - "FIXEDTERM" - - "EVERGREEN" - priceList: - type: "string" - planName: - type: "string" - state: - type: "string" - enum: - - "PENDING" - - "ACTIVE" - - "BLOCKED" - - "CANCELLED" - - "EXPIRED" - sourceType: - type: "string" - enum: - - "NATIVE" - - "MIGRATED" - - "TRANSFERRED" - cancelledDate: - type: "string" - format: "date-time" - chargedThroughDate: - type: "string" - format: "date" - billingStartDate: - type: "string" - format: "date-time" - billingEndDate: - type: "string" - format: "date-time" - billCycleDayLocal: - type: "integer" - format: "int32" - quantity: - type: "integer" - format: "int32" - events: - type: "array" - items: - $ref: "#/definitions/EventSubscription" - priceOverrides: - type: "array" - items: - $ref: "#/definitions/PhasePrice" - prices: - type: "array" - items: - $ref: "#/definitions/PhasePrice" - auditLogs: - type: "array" - items: - $ref: "#/definitions/AuditLog" - TierPrice: - type: "object" - properties: - blockPrices: - type: "array" - items: - $ref: "#/definitions/BlockPrice" - UsagePrice: - type: "object" - properties: - usageName: - type: "string" - usageType: + objectType: type: "string" enum: - - "CAPACITY" - - "CONSUMABLE" - billingMode: + - "ACCOUNT" + - "ACCOUNT_EMAIL" + - "BLOCKING_STATES" + - "BUNDLE" + - "CUSTOM_FIELD" + - "INVOICE" + - "PAYMENT" + - "TRANSACTION" + - "INVOICE_ITEM" + - "INVOICE_PAYMENT" + - "SUBSCRIPTION" + - "SUBSCRIPTION_EVENT" + - "SERVICE_BROADCAST" + - "PAYMENT_ATTEMPT" + - "PAYMENT_METHOD" + - "TAG" + - "TAG_DEFINITION" + - "TENANT" + - "TENANT_KVS" + name: type: "string" - enum: - - "IN_ADVANCE" - - "IN_ARREAR" - tierBlockPolicy: + value: type: "string" - enum: - - "ALL_TIERS" - - "TOP_TIER" - tierPrices: - type: "array" - items: - $ref: "#/definitions/TierPrice" - AccountTimeline: - type: "object" - properties: - account: - $ref: "#/definitions/Account" - bundles: - type: "array" - items: - $ref: "#/definitions/Bundle" - invoices: - type: "array" - items: - $ref: "#/definitions/Invoice" - payments: + auditLogs: type: "array" items: - $ref: "#/definitions/InvoicePayment" + $ref: "#/definitions/AuditLog" OverdueState: type: "object" properties: @@ -14153,60 +13891,29 @@ definitions: reevaluationIntervalDays: type: "integer" format: "int32" - AdminPayment: - type: "object" - properties: - lastSuccessPaymentState: - type: "string" - currentPaymentStateName: - type: "string" - transactionStatus: - type: "string" - Duration: - type: "object" - properties: - unit: - type: "string" - enum: - - "DAYS" - - "WEEKS" - - "MONTHS" - - "YEARS" - - "UNLIMITED" - number: - type: "integer" - format: "int32" - Limit: + Payment: type: "object" properties: - unit: + accountId: type: "string" - max: + format: "uuid" + paymentId: type: "string" - min: + format: "uuid" + paymentNumber: type: "string" - Phase: - type: "object" - properties: - type: + paymentExternalKey: type: "string" - prices: - type: "array" - items: - $ref: "#/definitions/Price" - fixedPrices: - type: "array" - items: - $ref: "#/definitions/Price" - duration: - $ref: "#/definitions/Duration" - usages: - type: "array" - items: - $ref: "#/definitions/Usage" - Price: - type: "object" - properties: + authAmount: + type: "number" + capturedAmount: + type: "number" + purchasedAmount: + type: "number" + refundedAmount: + type: "number" + creditedAmount: + type: "number" currency: type: "string" enum: @@ -14375,62 +14082,101 @@ definitions: - "ZMW" - "ZWD" - "BTC" - value: - type: "number" - Tier: - type: "object" - properties: - limits: - type: "array" - items: - $ref: "#/definitions/Limit" - fixedPrice: + paymentMethodId: + type: "string" + format: "uuid" + transactions: type: "array" items: - $ref: "#/definitions/Price" - recurringPrice: + $ref: "#/definitions/PaymentTransaction" + paymentAttempts: type: "array" items: - $ref: "#/definitions/Price" - blocks: + $ref: "#/definitions/PaymentAttempt" + auditLogs: type: "array" items: - $ref: "#/definitions/TieredBlock" - TieredBlock: + $ref: "#/definitions/AuditLog" + PaymentMethod: type: "object" properties: - unit: + paymentMethodId: type: "string" - size: + format: "uuid" + externalKey: type: "string" - max: + accountId: type: "string" - prices: + format: "uuid" + isDefault: + type: "boolean" + pluginName: + type: "string" + pluginInfo: + $ref: "#/definitions/PaymentMethodPluginDetail" + auditLogs: type: "array" items: - $ref: "#/definitions/Price" - Usage: + $ref: "#/definitions/AuditLog" + PaymentMethodPluginDetail: type: "object" properties: - billingPeriod: + externalPaymentMethodId: type: "string" - tiers: + isDefaultPaymentMethod: + type: "boolean" + properties: type: "array" items: - $ref: "#/definitions/Tier" - Plan: + $ref: "#/definitions/PluginProperty" + BlockingState: type: "object" properties: - name: + blockedId: type: "string" - prettyName: + format: "uuid" + stateName: type: "string" - recurringBillingMode: + service: + type: "string" + isBlockChange: + type: "boolean" + isBlockEntitlement: + type: "boolean" + isBlockBilling: + type: "boolean" + effectiveDate: + type: "string" + format: "date-time" + type: type: "string" enum: - - "IN_ADVANCE" - - "IN_ARREAR" - billingPeriod: + - "SUBSCRIPTION" + - "SUBSCRIPTION_BUNDLE" + - "ACCOUNT" + auditLogs: + type: "array" + items: + $ref: "#/definitions/AuditLog" + AdminPayment: + type: "object" + properties: + lastSuccessPaymentState: + type: "string" + currentPaymentStateName: + type: "string" + transactionStatus: + type: "string" + PlanDetail: + type: "object" + properties: + product: + type: "string" + plan: + type: "string" + priceList: + type: "string" + finalPhaseBillingPeriod: type: "string" enum: - "DAILY" @@ -14450,53 +14196,13 @@ definitions: - "BIENNIAL" - "TRIENNIAL" - "NO_BILLING_PERIOD" - phases: - type: "array" - items: - $ref: "#/definitions/Phase" - PriceList: - type: "object" - properties: - name: - type: "string" - plans: - type: "array" - items: - type: "string" - Product: - type: "object" - properties: - type: - type: "string" - name: - type: "string" - prettyName: - type: "string" - plans: - type: "array" - items: - $ref: "#/definitions/Plan" - included: - type: "array" - items: - type: "string" - available: + finalPhaseRecurringPrice: type: "array" items: - type: "string" - SimplePlan: - type: "object" - properties: - planId: - type: "string" - productName: - type: "string" - productCategory: - type: "string" - enum: - - "BASE" - - "ADD_ON" - - "STANDALONE" + $ref: "#/definitions/Price" + Price: + type: "object" + properties: currency: type: "string" enum: @@ -14665,76 +14371,8 @@ definitions: - "ZMW" - "ZWD" - "BTC" - amount: + value: type: "number" - billingPeriod: - type: "string" - enum: - - "DAILY" - - "WEEKLY" - - "BIWEEKLY" - - "THIRTY_DAYS" - - "THIRTY_ONE_DAYS" - - "SIXTY_DAYS" - - "NINETY_DAYS" - - "MONTHLY" - - "BIMESTRIAL" - - "QUARTERLY" - - "TRIANNUAL" - - "BIANNUAL" - - "ANNUAL" - - "SESQUIENNIAL" - - "BIENNIAL" - - "TRIENNIAL" - - "NO_BILLING_PERIOD" - trialLength: - type: "integer" - format: "int32" - trialTimeUnit: - type: "string" - enum: - - "DAYS" - - "WEEKS" - - "MONTHS" - - "YEARS" - - "UNLIMITED" - availableBaseProducts: - type: "array" - items: - type: "string" - PlanDetail: - type: "object" - properties: - product: - type: "string" - plan: - type: "string" - priceList: - type: "string" - finalPhaseBillingPeriod: - type: "string" - enum: - - "DAILY" - - "WEEKLY" - - "BIWEEKLY" - - "THIRTY_DAYS" - - "THIRTY_ONE_DAYS" - - "SIXTY_DAYS" - - "NINETY_DAYS" - - "MONTHLY" - - "BIMESTRIAL" - - "QUARTERLY" - - "TRIANNUAL" - - "BIANNUAL" - - "ANNUAL" - - "SESQUIENNIAL" - - "BIENNIAL" - - "TRIENNIAL" - - "NO_BILLING_PERIOD" - finalPhaseRecurringPrice: - type: "array" - items: - $ref: "#/definitions/Price" Catalog: type: "object" properties: @@ -14925,25 +14563,392 @@ definitions: type: "array" items: $ref: "#/definitions/PriceList" + Duration: + type: "object" + properties: + unit: + type: "string" + enum: + - "DAYS" + - "WEEKS" + - "MONTHS" + - "YEARS" + - "UNLIMITED" + number: + type: "integer" + format: "int32" + Limit: + type: "object" + properties: + unit: + type: "string" + max: + type: "string" + min: + type: "string" + Phase: + type: "object" + properties: + type: + type: "string" + prices: + type: "array" + items: + $ref: "#/definitions/Price" + fixedPrices: + type: "array" + items: + $ref: "#/definitions/Price" + duration: + $ref: "#/definitions/Duration" + usages: + type: "array" + items: + $ref: "#/definitions/Usage" + Plan: + type: "object" + properties: + name: + type: "string" + prettyName: + type: "string" + recurringBillingMode: + type: "string" + enum: + - "IN_ADVANCE" + - "IN_ARREAR" + billingPeriod: + type: "string" + enum: + - "DAILY" + - "WEEKLY" + - "BIWEEKLY" + - "THIRTY_DAYS" + - "THIRTY_ONE_DAYS" + - "SIXTY_DAYS" + - "NINETY_DAYS" + - "MONTHLY" + - "BIMESTRIAL" + - "QUARTERLY" + - "TRIANNUAL" + - "BIANNUAL" + - "ANNUAL" + - "SESQUIENNIAL" + - "BIENNIAL" + - "TRIENNIAL" + - "NO_BILLING_PERIOD" + phases: + type: "array" + items: + $ref: "#/definitions/Phase" + PriceList: + type: "object" + properties: + name: + type: "string" + plans: + type: "array" + items: + type: "string" + Product: + type: "object" + properties: + type: + type: "string" + name: + type: "string" + prettyName: + type: "string" + plans: + type: "array" + items: + $ref: "#/definitions/Plan" + included: + type: "array" + items: + type: "string" + available: + type: "array" + items: + type: "string" + Tier: + type: "object" + properties: + limits: + type: "array" + items: + $ref: "#/definitions/Limit" + fixedPrice: + type: "array" + items: + $ref: "#/definitions/Price" + recurringPrice: + type: "array" + items: + $ref: "#/definitions/Price" + blocks: + type: "array" + items: + $ref: "#/definitions/TieredBlock" + TieredBlock: + type: "object" + properties: + unit: + type: "string" + size: + type: "string" + max: + type: "string" + prices: + type: "array" + items: + $ref: "#/definitions/Price" Unit: type: "object" properties: name: type: "string" - prettyName: + prettyName: + type: "string" + Usage: + type: "object" + properties: + billingPeriod: + type: "string" + tiers: + type: "array" + items: + $ref: "#/definitions/Tier" + CatalogValidation: + type: "object" + properties: + catalogValidationErrors: + type: "array" + items: + $ref: "#/definitions/CatalogValidationError" + CatalogValidationError: + type: "object" + properties: + errorDescription: + type: "string" + SimplePlan: + type: "object" + properties: + planId: + type: "string" + productName: + type: "string" + productCategory: + type: "string" + enum: + - "BASE" + - "ADD_ON" + - "STANDALONE" + currency: + type: "string" + enum: + - "AED" + - "AFN" + - "ALL" + - "AMD" + - "ANG" + - "AOA" + - "ARS" + - "AUD" + - "AWG" + - "AZN" + - "BAM" + - "BBD" + - "BDT" + - "BGN" + - "BHD" + - "BIF" + - "BMD" + - "BND" + - "BOB" + - "BRL" + - "BSD" + - "BTN" + - "BWP" + - "BYR" + - "BZD" + - "CAD" + - "CDF" + - "CHF" + - "CLP" + - "CNY" + - "COP" + - "CRC" + - "CUC" + - "CUP" + - "CVE" + - "CZK" + - "DJF" + - "DKK" + - "DOP" + - "DZD" + - "EGP" + - "ERN" + - "ETB" + - "EUR" + - "FJD" + - "FKP" + - "GBP" + - "GEL" + - "GGP" + - "GHS" + - "GIP" + - "GMD" + - "GNF" + - "GTQ" + - "GYD" + - "HKD" + - "HNL" + - "HRK" + - "HTG" + - "HUF" + - "IDR" + - "ILS" + - "IMP" + - "INR" + - "IQD" + - "IRR" + - "ISK" + - "JEP" + - "JMD" + - "JOD" + - "JPY" + - "KES" + - "KGS" + - "KHR" + - "KMF" + - "KPW" + - "KRW" + - "KWD" + - "KYD" + - "KZT" + - "LAK" + - "LBP" + - "LKR" + - "LRD" + - "LSL" + - "LTL" + - "LVL" + - "LYD" + - "MAD" + - "MDL" + - "MGA" + - "MKD" + - "MMK" + - "MNT" + - "MOP" + - "MRO" + - "MUR" + - "MVR" + - "MWK" + - "MXN" + - "MYR" + - "MZN" + - "NAD" + - "NGN" + - "NIO" + - "NOK" + - "NPR" + - "NZD" + - "OMR" + - "PAB" + - "PEN" + - "PGK" + - "PHP" + - "PKR" + - "PLN" + - "PYG" + - "QAR" + - "RON" + - "RSD" + - "RUB" + - "RWF" + - "SAR" + - "SBD" + - "SCR" + - "SDG" + - "SEK" + - "SGD" + - "SHP" + - "SLL" + - "SOS" + - "SPL" + - "SRD" + - "STD" + - "SVC" + - "SYP" + - "SZL" + - "THB" + - "TJS" + - "TMT" + - "TND" + - "TOP" + - "TRY" + - "TTD" + - "TVD" + - "TWD" + - "TZS" + - "UAH" + - "UGX" + - "USD" + - "UYU" + - "UZS" + - "VEF" + - "VND" + - "VUV" + - "WST" + - "XAF" + - "XCD" + - "XDR" + - "XOF" + - "XPF" + - "YER" + - "ZAR" + - "ZMW" + - "ZWD" + - "BTC" + amount: + type: "number" + billingPeriod: + type: "string" + enum: + - "DAILY" + - "WEEKLY" + - "BIWEEKLY" + - "THIRTY_DAYS" + - "THIRTY_ONE_DAYS" + - "SIXTY_DAYS" + - "NINETY_DAYS" + - "MONTHLY" + - "BIMESTRIAL" + - "QUARTERLY" + - "TRIANNUAL" + - "BIANNUAL" + - "ANNUAL" + - "SESQUIENNIAL" + - "BIENNIAL" + - "TRIENNIAL" + - "NO_BILLING_PERIOD" + trialLength: + type: "integer" + format: "int32" + trialTimeUnit: type: "string" - CatalogValidation: - type: "object" - properties: - catalogValidationErrors: + enum: + - "DAYS" + - "WEEKS" + - "MONTHS" + - "YEARS" + - "UNLIMITED" + availableBaseProducts: type: "array" items: - $ref: "#/definitions/CatalogValidationError" - CatalogValidationError: - type: "object" - properties: - errorDescription: - type: "string" + type: "string" InvoicePaymentTransaction: type: "object" properties: @@ -15427,6 +15432,24 @@ definitions: $ref: "#/definitions/PhasePrice" planName: type: "string" + NodeCommand: + type: "object" + properties: + isSystemCommandType: + type: "boolean" + nodeCommandType: + type: "string" + nodeCommandProperties: + type: "array" + items: + $ref: "#/definitions/NodeCommandProperty" + NodeCommandProperty: + type: "object" + properties: + key: + type: "string" + value: + type: "object" NodeInfo: type: "object" properties: @@ -15479,24 +15502,6 @@ definitions: type: "string" registrationName: type: "string" - NodeCommand: - type: "object" - properties: - isSystemCommandType: - type: "boolean" - nodeCommandType: - type: "string" - nodeCommandProperties: - type: "array" - items: - $ref: "#/definitions/NodeCommandProperty" - NodeCommandProperty: - type: "object" - properties: - key: - type: "string" - value: - type: "object" Overdue: type: "object" properties: @@ -15602,13 +15607,6 @@ definitions: type: "array" items: $ref: "#/definitions/AuditLog" - HostedPaymentPageFields: - type: "object" - properties: - formFields: - type: "array" - items: - $ref: "#/definitions/PluginProperty" ComboHostedPaymentPage: type: "object" properties: @@ -15626,6 +15624,13 @@ definitions: type: "array" items: $ref: "#/definitions/AuditLog" + HostedPaymentPageFields: + type: "object" + properties: + formFields: + type: "array" + items: + $ref: "#/definitions/PluginProperty" ComboPaymentTransaction: type: "object" properties: diff --git a/pom.xml b/pom.xml index 8cdc226..27731d3 100644 --- a/pom.xml +++ b/pom.xml @@ -22,7 +22,7 @@ org.kill-bill.billing killbill-oss-parent - 0.146.66 + 0.146.76 killbill-client-java 1.4.0-SNAPSHOT diff --git a/src/main/java/org/killbill/billing/client/api/gen/CreditApi.java b/src/main/java/org/killbill/billing/client/api/gen/CreditApi.java index 90e5324..0334133 100644 --- a/src/main/java/org/killbill/billing/client/api/gen/CreditApi.java +++ b/src/main/java/org/killbill/billing/client/api/gen/CreditApi.java @@ -23,6 +23,7 @@ import java.util.Objects; import org.killbill.billing.client.model.gen.InvoiceItem; +import java.time.LocalDate; import java.util.UUID; import org.killbill.billing.client.model.InvoiceItems; import java.util.List; @@ -58,16 +59,19 @@ public CreditApi(final KillBillHttpClient httpClient) { this.httpClient = httpClient; } - public InvoiceItems createCredits(final InvoiceItems body, final Map pluginProperty, final RequestOptions inputOptions) throws KillBillClientException { - return createCredits(body, Boolean.valueOf(false), pluginProperty, inputOptions); + public InvoiceItems createCredits(final InvoiceItems body, final LocalDate requestedDate, final Map pluginProperty, final RequestOptions inputOptions) throws KillBillClientException { + return createCredits(body, requestedDate, Boolean.valueOf(false), pluginProperty, inputOptions); } - public InvoiceItems createCredits(final InvoiceItems body, final Boolean autoCommit, final Map pluginProperty, final RequestOptions inputOptions) throws KillBillClientException { + public InvoiceItems createCredits(final InvoiceItems body, final LocalDate requestedDate, final Boolean autoCommit, final Map pluginProperty, final RequestOptions inputOptions) throws KillBillClientException { Preconditions.checkNotNull(body, "Missing the required parameter 'body' when calling createCredits"); final String uri = "/1.0/kb/credits"; final Multimap queryParams = new TreeMapSetMultimap<>(inputOptions.getQueryParams()); + if (requestedDate != null) { + queryParams.put("requestedDate", String.valueOf(requestedDate)); + } if (autoCommit != null) { queryParams.put("autoCommit", String.valueOf(autoCommit)); } diff --git a/src/main/java/org/killbill/billing/client/model/gen/EventSubscription.java b/src/main/java/org/killbill/billing/client/model/gen/EventSubscription.java index 737fd8c..45b0140 100644 --- a/src/main/java/org/killbill/billing/client/model/gen/EventSubscription.java +++ b/src/main/java/org/killbill/billing/client/model/gen/EventSubscription.java @@ -300,4 +300,3 @@ private String toIndentedString(java.lang.Object o) { return o.toString().replace("\n", "\n "); } } -