title: "The conditional request failed" whereas the condition works
body: <p>I am using Amazonica, a Clojure library to write to DynamoDB.</p>
  
  <p>The following inserts an item into DynamoDB and updates its content if called a second time, which is expected.</p>
  
  <pre><code>(ddb/put-item cred
     :table-name table-name
     :item payload)
  </code></pre>
  
  <p>Now, the following inserts an item only the first time. Calling it a second time doesn't do anything, which is what I need.</p>
  
  <pre><code>(ddb/put-item cred
     :table-name table-name
     :condition-expression "attribute_not_exists(clientId)"
     :item payload)
  </code></pre>
  
  <p>However with the latest I am getting an error:</p>
  
  <blockquote>
    <p>The conditional request failed (Service: AmazonDynamoDBv2; Status Code: 400; Error Code: ConditionalCheckFailedException;</p>
  </blockquote>
  
  <p>... which doesn't really make the code deliverable. My CloudFormation template is very simple:</p>
  
  <pre><code>"Resources": {
    "ClientTable": {
      "Type": "AWS::DynamoDB::Table",
      "Properties": {
        "AttributeDefinitions": [
          { "AttributeName": "clientId", "AttributeType": "S" }
        ],
        "KeySchema": [
          { "AttributeName": "clientId", "KeyType": "HASH" }
        ],
        "ProvisionedThroughput": {
          "ReadCapacityUnits": { "Ref": "ReadCapacityUnits" },
          "WriteCapacityUnits": { "Ref": "WriteCapacityUnits" }
        },
        "TableName": "ClientTable"
      }
    }
  }
  </code></pre>
  
  <p>Am I missing something?</p>