openapi: 3.0.0 info: description: Api Documentation version: '1.0' title: Api Documentation Accounts allocation-api-controller-v-3 API termsOfService: urn:tos contact: {} license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://service.chromeriver.com tags: - name: allocation-api-controller-v-3 description: V3 endpoints include better support and error handling for allocation user defined attributes (UDA). paths: /v3/allocations: get: tags: - allocation-api-controller-v-3 summary: Get list of allocations description: This web service allows an external application to get list of allocation details operationId: getAllocationsUsingGET_1 parameters: - name: allocation-number in: query description: Unique allocation number required: false allowEmptyValue: false schema: type: string - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: client-number in: query description: Unique Client number required: false allowEmptyValue: false schema: type: string - name: closed in: query description: Allocation is closed required: false allowEmptyValue: false schema: type: boolean - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: deleted in: query description: Allocation is deleted required: false allowEmptyValue: false schema: type: boolean - name: page in: query description: Starting page number for getting parts of results required: false allowEmptyValue: false schema: type: integer format: int32 - name: pageSize in: query description: Size of page for getting parts of results required: false allowEmptyValue: false schema: type: integer format: int32 - name: x-api-key in: header description: API key for Authentication required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/AllocationView' '400': description: Customer Code is invalid. '401': description: Customer Code is not authorized. Cannot get allocation details. '503': description: Service unavailable. deprecated: false post: tags: - allocation-api-controller-v-3 summary: Create/update list of allocations description: This web service allows an external application to create/update list of allocations. operationId: bulkUpsertAllocationsUsingPOST_1 parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: x-api-key in: header description: API key for Authentication required: true schema: type: string requestBody: $ref: '#/components/requestBodies/AllocationViewArray' responses: '200': description: Allocations are created/updated successfully. content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiResponse' '207': description: Some of the allocations are created/updated successfully and the remaining allocations are skipped due to error. content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiResponse' '400': description: Customer Code is invalid. '401': description: Customer Code is not authorized. Cannot create/update allocations. '422': description: Allocations are skipped due to error. content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiResponse' '503': description: Service unavailable. deprecated: false /v3/allocations/entity: post: tags: - allocation-api-controller-v-3 summary: Create matter on select description: This web service allows an external application to create a matter on select. operationId: createMatterOnSelectUsingPOST parameters: - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: x-api-key in: header description: API key for Authentication required: true schema: type: string requestBody: $ref: '#/components/requestBodies/MatterOnSelect' responses: '200': description: Matter On Select Created content: application/json: schema: type: object '404': description: Matter Not Found '412': description: Matter On Select Already Exists deprecated: false put: tags: - allocation-api-controller-v-3 summary: Update matter on select description: This web service allows an external application to update a matter on select. operationId: updateMatterOnSelectUsingPUT parameters: - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: x-api-key in: header description: API key for Authentication required: true schema: type: string requestBody: $ref: '#/components/requestBodies/MatterOnSelect' responses: '200': description: Matter On Select Updated content: application/json: schema: type: object '404': description: Matter Not Found deprecated: false /v3/allocations/matterFilter: post: tags: - allocation-api-controller-v-3 summary: Update matter filter description: This web service allows an external application to update a matter filter. operationId: updateMatterFilterUsingPOST parameters: - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: x-api-key in: header description: API key for Authentication required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MatterFilter' description: matterFilter required: true responses: '200': description: Matter Filter Updated content: application/json: schema: $ref: '#/components/schemas/MatterTO' '404': description: Matter Not Found deprecated: false /v3/allocations/search: get: tags: - allocation-api-controller-v-3 summary: Search for list of allocations description: This web service allows an external application to search for list of allocation details operationId: searchAllocationsUsingGET parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: pageNum in: query description: Starting record number for getting parts of results required: false allowEmptyValue: false schema: type: integer format: int32 - name: pageSize in: query description: Size of page for getting parts of results required: false allowEmptyValue: false schema: type: integer format: int32 - name: searchTerm in: query description: Search string for allocation search required: false allowEmptyValue: false schema: type: string - name: x-api-key in: header description: API key for Authentication required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AllocationPaginationResponse' '400': description: Customer Code is invalid. '401': description: Customer Code is not authorized. Cannot get allocation details. '404': description: No allocation exists for the Allocation Number and Client Number as requested. Please try again. '503': description: Service unavailable. deprecated: false components: schemas: PaginationMetadata: type: object properties: pageNumber: type: integer format: int32 example: 1 description: Requested page number. pageSize: type: integer format: int32 example: 10 description: Actual page size. totalPages: type: integer format: int32 example: 1 description: Total pages (in actual size) in response. totalRecords: type: integer format: int32 example: 1 description: Total records of allocation in response title: PaginationMetadata EntityTO: type: object properties: code: type: string entityId: type: integer format: int32 entityType: $ref: '#/components/schemas/EntityTypeTO' extraData1: type: string extraData2: type: string extraData3: type: string extraData4: type: string extraData5: type: string name: type: string order: type: integer format: int32 title: EntityTO UDAPerson: type: object properties: name: type: string personUniqueId: type: string title: UDAPerson MatterOnSelect: type: object properties: entityTypeCode: type: string matterUniqueID: type: string title: MatterOnSelect AllocationEntity: type: object properties: name: type: string value: type: string title: AllocationEntity MatterTO: type: object properties: action: type: string enum: - upsert - delete allocationEntities: type: array description: List of allocation entities. items: $ref: '#/components/schemas/EntityTO' allocationId: type: string example: 48008116 description: Unique identifier for the allocation. allocationName: type: string example: Bank-NYC-Sales description: Corresponding Allocation name. allocationNumber: type: string example: '1000-20-50' description: Unique Allocation number. clientName: type: string example: TCC CHARGE description: Corresponding Client name. clientNumber: type: string example: '0001' description: Unique Client number. closedDate: type: string example: 2016-09-28 18:46:19:000 description: Allocation is unavailable for selection after the closedDate. createSource: type: string currency: type: string example: USD description: 'Currency code of the Allocation. Format: ISO 4217 code (alpha)' currencyCode: type: string customerId: type: integer format: int32 entity1: type: string entity2: type: string entity3: type: string extraLineItemData1LegalValues: type: string filterTerms1: type: array description: List of search terms used for 1st allocation filter. items: $ref: '#/components/schemas/Map_string_string_' filterTerms2: type: array description: List of search terms used for 2nd allocation filter. items: $ref: '#/components/schemas/Map_string_string_' glAccount: type: string example: '1000-20-50' description: General Ledger Account. isBillable: type: boolean languageCode: type: string locale: type: string example: en description: 'Language of the Allocation. Format: ISO 639-1 (2-letter code)' onSelect1EntityTypeCode: type: string example: false description: Entity Type that will be linked to the allocation On Select 1. onSelect2EntityTypeCode: type: string example: DEP description: Entity Type that will be linked to the allocation On Select 2. parentClientNumber: type: string example: 10001 description: Optional Parent Grouping Identifier. project: type: string example: XYZ description: Used for General Ledger Project Mapping. routeIndependent: type: boolean example: true description: Assigns the status of a allocation to treat uniquely when it is considered billable. search1: type: string search2: type: string startDate: type: string example: 2016-09-28 18:46:19:000 description: Allocation is available for selection from the startDate. type: type: string example: GL description: Allocation type. udaPersons: type: array description: List of PersonUniqueIDs used for allocation assignment. items: $ref: '#/components/schemas/PersonTO' udas: type: array description: List of User Defined Attributes. items: $ref: '#/components/schemas/MatterUDATO' udf1: type: string udf1PersonUniqueID: type: string udf2: type: string udf2PersonUniqueID: type: string udf3: type: string udf3PersonUniqueID: type: string udf4: type: string title: MatterTO ApiResponse: type: object properties: allocationId: type: string example: 1000-001_cn1000 description: Unique identifier for the allocation. errorMessage: type: string example: Invalid entity1 specified. description: Error message for the failed allocation. result: type: string example: SUCCESS description: Status of the allocation. enum: - SUCCESS - FAIL title: ApiResponse EntityTypeTO: type: object properties: code: type: string entityTypeId: type: integer format: int32 name: type: string title: EntityTypeTO AllocationPaginationResponse: type: object properties: allocations: type: array description: List of allocations. items: $ref: '#/components/schemas/ResponseAllocationView' meta: $ref: '#/components/schemas/PaginationMetadata' title: AllocationPaginationResponse AllocationView: type: object properties: allocationEntities: type: array description: List of allocation entities. items: $ref: '#/components/schemas/AllocationEntity' allocationName: type: string example: AUTOAPPROVE (BY) description: Corresponding Allocation name. allocationNumber: type: string example: 1000-001 description: Unique Allocation number. clientName: type: string example: Autoapprove description: Corresponding Client name. clientNumber: type: string example: cn1000 description: Unique Client number. closedDate: type: string example: 2017-10-18 18:46:19+00:00 description: Allocation is unavailable for selection after the closedDate. currency: type: string example: USD description: 'Currency code of the Allocation. Format: ISO 4217 code (alpha)' extraLineItemData1LegalValues: type: string example: 00,10,20,30,40 description: List of valid GLDept values that may be selected along with this specific allocation. Must map to customer's CodeType. Values separated by commas filterTerms1: type: array description: List of search terms used for 1st allocation filter. items: type: string filterTerms2: type: array description: List of search terms used for 2nd allocation filter. items: type: string glAccount: type: string example: test GL description: General Ledger Account. locale: type: string example: en description: 'Language of the Allocation. Format: ISO 639-1 (2-letter code)' onSelect1EntityTypeCode: type: string example: false description: Entity Type that will be linked to the allocation On Select 1. onSelect2EntityTypeCode: type: string example: DEP description: Entity Type that will be linked to the allocation On Select 2. parentClientNumber: type: string example: cn1000 description: Optional Parent Grouping Identifier. routeIndependent: type: boolean example: true description: Assigns the status of an allocation to treat uniquely when it is considered billable. startDate: type: string example: 2017-10-18 18:46:19+00:00 description: Allocation is available for selection from the startDate. type: type: string example: B description: Allocation type. udaPersons: type: array description: List of PersonUniqueIDs used for allocation assignment. items: $ref: '#/components/schemas/UDAPerson' udas: type: array description: List of User Defined Attributes. items: $ref: '#/components/schemas/AllocationUDA' title: AllocationView MatterFilter: type: object properties: matterUniqueID: type: string search1: type: string search2: type: string title: MatterFilter Map_string_string_: type: object title: Map«string,string» additionalProperties: type: string ResponseAllocationView: type: object properties: allocationId: type: string example: 1000-001_0222 description: Unique Allocation ID. allocationName: type: string example: AUTOAPPROVE (BY) description: Corresponding Allocation name. allocationNumber: type: string example: 1000-001 description: Unique Allocation number. clientName: type: string example: Autoapprove description: Corresponding Client name. entityTypeId1: type: integer format: int32 example: 100500 description: Corresponding OnSelect Entity1 ID. entityTypeId2: type: integer format: int32 example: 100500 description: Corresponding OnSelect Entity2 ID. isRecent: type: boolean example: true description: Corresponding isRecent title: ResponseAllocationView AllocationUDA: type: object properties: name: type: string value: type: string title: AllocationUDA MatterUDATO: type: object properties: action: type: string enum: - upsert - delete dataType: type: string name: type: string udaName: type: string udaValue: type: string value: type: string title: MatterUDATO PersonTO: type: object properties: name: type: string personId: type: string title: PersonTO requestBodies: MatterOnSelect: content: application/json: schema: $ref: '#/components/schemas/MatterOnSelect' description: matterOnSelect required: true AllocationViewArray: content: application/json: schema: type: array items: $ref: '#/components/schemas/AllocationView' description: List of allocations required: true